Содержимое электронной почты Python IMAP содержит строку - PullRequest
0 голосов
/ 03 февраля 2019

Я могу войти в учетную запись gmail с помощью python IMAP

imap = imaplib.IMAP4_SSL('imap.gmail.com')
imap.login(myDict["emailUsername"], myDict["emailPassword"])
imap.select(mailbox='inbox', readonly=False)
resp, items = imap.search(None, 'All')
email_ids = items[0].split()
latest_email_id = email_ids[-1]

resp, data = imap.fetch(latest_email_id, "(UID)")
print ("resp= ", resp, " data=", data)
#msg_uid = parse_uid(data[0])
match = pattern_uid.match(data[0].decode("utf-8"))
#print ("match= ", match)
msg_uid = match.group('uid')

Мне нужно убедиться, что UID для последнего полученного мной электронного письма содержит определенную строку (XYZ).Я не ищу тему заголовка, но содержание электронной почты.Как я могу это сделать?

1 Ответ

0 голосов
/ 04 февраля 2019

Вы можете пойти несколькими путями:

  1. Получить сообщение и просмотреть текстовые части тела в поисках вашей строки - пример на Поиск ссылок в теле письмас Python

  2. Получить сервер, чтобы выполнить поиск, предоставив 'latest_email_id' и ваши критерии поиска обратно на сервер в команде UID SEARCH.Для Gmail вы даже можете использовать атрибут X-GM-RAW, чтобы использовать ту же поддержку синтаксиса, что и веб-интерфейс GMail.Подробнее см. https://developers.google.com/gmail/imap/imap-extensions.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...