我正在开发一个电子邮件客户端,遇到了一个小问题。我不确定如何下载电子邮件并将它们保存到本地硬盘。我能够使用 IMAP4 SSL(使用下面的代码)连接到服务器。
import imaplib
server = imaplib.IMAP4_SSL('imap.gmail.com')
server.login('USER', 'PASS')
我正在开发一个电子邮件客户端,遇到了一个小问题。我不确定如何下载电子邮件并将它们保存到本地硬盘。我能够使用 IMAP4 SSL(使用下面的代码)连接到服务器。
import imaplib
server = imaplib.IMAP4_SSL('imap.gmail.com')
server.login('USER', 'PASS')
您可以使用 列出邮箱中的目录IMAP4.list
。要真正从目录中获取消息,请使用IMAP4.select
,然后使用IMAP4.search
,并遍历它返回的 id 列表。在您的情况下,您可以执行以下操作:
server.select('[Gmail]/All Mail')
resp, items = server.search(None, "(UNSEEN)")
for mail in items[0].split():
resp, data = m.fetch(mail, '(RFC822)')
body = data[0][1]
print body
请务必阅读文档:http: //docs.python.org/library/imaplib.html。也同意这个答案,通读 PyMOTW 的教程。一般来说,这是检查标准库中模块教程的好地方。
对于简单的使用示例,我发现 Doug Hellmann 的“Python Module of the Week”很快就给出了很好的理解。具体参见获取消息部分。