Python imaplib 使用发件人域搜索

Python imaplib Search using senders domain

我正在尝试使用 IMAP 搜索功能搜索仅 return 从特定域发送过电子邮件的用户。我希望这实际上是可能的。

例如,假设我只想从来自 @whosebug.com.

的地址发送的用户那里获取电子邮件

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

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

然而这 return 没有结果。当我通过用户姓名的一部分搜索用户时,例如

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

即使该部分与他们的用户名完全不同,它也能正常工作,例如j.smith@whosebug.com。

因为我只想从这些特定域中获取那些要自动处理的内容,而让其余的内容保持未读状态,所以我希望我还能做些其他事情。

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

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

将获取来自 'whosebug.com' 域的电子邮件地址的所有未读电子邮件。