Я использую API gmail для поиска писем от пользователей. Я создал следующий поисковый запрос:
ticket after:2015/11/04 AND -from:me AND -in:trash
Когда я запускаю этот запрос в интерфейсе браузера Gmail, я получаю 11 сообщений (как и ожидалось). Однако, когда я запускаю один и тот же запрос в API, я получаю только 10 сообщений. Код, который я использую для запроса API gmail, написан на Python и выглядит следующим образом:
searchQuery = 'ticket after:2015/11/04 AND -from:me AND -in:trash'
messagesObj = google.get('/gmail/v1/users/me/messages', data={'q': searchQuery}, token=token).data
print messagesObj.resultSizeEstimate # 10
Я отправил одно и то же сообщение на другой адрес gmail и протестировал его с этого адреса электронной почты, и, к моему удивлению, он обнаруживается в API-поиске с другим адресом электронной почты, поэтому проблема не в самом электронном адресе.
После бесконечной отправки по электронной почте через различные учетные записи test-gmail я думаю (но не на 100% уверен), что функция поиска в браузере имеет другое определение "me"
. Похоже, что в API-поиске он не включает электронные письма, которые поступают с адресов электронной почты с тем же именем, в то время как эти результаты фактически включены в результат поиска браузера. Например: если "Pete Kramer"
отправляет электронное письмо от [email protected]
до [email protected]
(оба из которых имеют свое имя на "Pete Kramer"
), оно будет отображаться в браузере-поиске и не будет отображаться в API-поиске.
Кто-нибудь может подтвердить, что это проблема? И если да, есть ли способ обойти это, чтобы получить те же результаты, что и поисковый запрос браузера? Или кто-нибудь еще знает, почему результаты поиска в браузере gmail отличаются от API-поиска gmail? Все советы приветствуются!