2015-05-22 3 views
0

Я пытаюсь выполнить поиск с помощью функции поиска IMAP, чтобы возвращать только тех пользователей, которые отправили электронные письма из определенного домена. Я надеюсь, что это действительно возможно.Python imaplib Поиск с использованием домена отправителей

Например, допустим, что я хочу получать электронные письма от пользователей, отправляющих адреса, исходящие из @ stackoverflow.com.

Подключитесь, войдите в систему и т. Д., Затем выполните поиск, как показано ниже.

c = imaplib.IMAP4(imapserver)  
c.starttls() 
c.login(username, password)  
c.list()  
c.select('INBOX') 
c.search(None, 'UNSEEN FROM "@stackoverflow.com"') 

Однако это не дает никаких результатов. Когда я ищу пользователя по части имени, например.

c.search(None, 'UNSEEN FROM "John"') 

он работает, даже если деталь не похожа на их имя пользователя, например. [email protected]

Поскольку я хочу только получить те, которые будут автоматически обрабатываться из этих конкретных доменов, и оставить остальных непрочитанными. Я надеюсь, что есть что-то еще, что я могу сделать.

ответ

1

Просто нужно вникать немного дальше в том, что происходит

c.search(None, 'UNSEEN HEADER FROM "stackoverflow.com"')

Получат все непрочитанные электронные письма, приходящие с адреса электронной почты от «stackoverflow.com» домена.

Смежные вопросы