python imaplib解析gmail

时间:2012-02-13 18:45:00

标签: python imap

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 个答案:

答案 0 :(得分:2)

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邮件时。在此邮件中搜索,取决于您的标准:正则表达式,标题中的内容,......