Python Imaplib парсинг Gmail - PullRequest
       0

Python Imaplib парсинг Gmail

2 голосов
/ 13 февраля 2012
import imaplib

usr = 'someuser'
pwd = 'somepwd'

imap_server = imaplib.IMAP4_SSL('imap.gmail.com', 993)
imap_server.login(USER, PASSWORD)
imap_server.select('Inbox')

for message_id in imap_server.search(None, '(FROM "example email.com")')[1][0].split(" "):
    response = imap_server.fetch(message_id, "RFC822.TEXT")
    print response[1][0][1]

Я хочу найти письмо с определенной темой и с адреса электронной почты. Как настроить этот код, чтобы он соответствовал обеим проверкам?

Кроме того, как только я открываю сообщение, я хочу найти в сообщении определенный контент. Какие лучший способ пойти по этому поводу? Спасибо!

1 Ответ

2 голосов
/ 13 февраля 2012

Оболочка python imap очень тонкая - она ​​просто предоставляет спецификацию imap, см. http://www.faqs.org/rfcs/rfc3501.html

в команде fetch вы можете выбрать несколько частей письма, которое вы выбираете дляполучить всю отформатированную почту RFC.Вы также можете выполнить поиск следующим образом:

typ, data = imap_server.search(None, '(SUBJECT "Whatever you are searching for")')

Вы уже показали, как получить почту.Когда у вас в руках RFC-почта.Поиск в этом письме зависит от ваших критериев: регулярное выражение, что-то в заголовках, ...

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