=)
我需要从电子邮件收件箱中获取具有特定地址的所有邮件。 为此,我使用命令:
self.server.search(None, '(HEADER FROM "test@gmail.com")')
它是可行的,但是当我尝试查找消息表单st@gmail.com
时,我得到了相同的结果。而且我知道以此标准搜索所有包含CONTAINS特定字符串的消息。但是对我来说test@gmail.com
和st@gmail.com
是不同的地址。如何搜索不包含等于的地址?
import imaplib
self.server = imaplib.IMAP4(self.imap_ssl_host, self.imap_ssl_port)
答案 0 :(得分:1)
您可以尝试搜索int64Value
而不是<test@gmail.com>
。
来自test@gmail.com的消息通常说test@gmail.com
,其中包含子字符串From: Firstname Lastname <test@gmail.com>
,大多数IMAP搜索是子字符串搜索,包括<test@
。如果此hack对您和您正在使用的任何服务器都足够,那么对您也有好处,否则,您需要进行客户端筛选以消除误报。