Python imaplib使用发件人域搜索

时间:2015-05-22 05:56:57

标签: python imaplib

我尝试使用IMAP搜索功能进行搜索,仅返回已从特定域发送电子邮件的用户。我希望这实际上是可能的。

例如,假设我只想从来自@ stackoverflow.com的地址发送用户的电子邮件。

我们连接,登录etcetera然后搜索如下。

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"')

即使该部分与其用户名不同,它仍可正常工作,例如j.smith@stackoverflow.com。

由于我只想获取那些将从这些特定域自动处理的内容并将其余内容保留为未读,我希望我还能做其他事情。

1 个答案:

答案 0 :(得分:1)

只需要进一步深入了解正在发生的事情

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

将从' stackoverflow.com'中的电子邮件地址获取所有未读电子邮件。域。