首页 > 编程笔记

Python imaplib模块:邮件读取IMAP协议

IMAP(Internet Message Access Protocol)是另一种读取电子邮件的协议。IMAP 是读取邮件服务器的电子邮件与公布栏信息的方法,也就是说,IMAP 允许客户端的邮件程序存取远程的信息。

Python 的 maplib 模块提供 IMAP 协议的客户端接口。imaplib 模块定义一个 IMAP4 类,用于创建一个 IMAP 连接。IMAP4 类的语法如下:

class IMAP4([host [, port]])

其中,host 是主机名称;port 的默认值是 163。
下面的示例取出 IMAP 服务器 imap.dummy.com 内的所有邮件信箱信息。
使用imaplib模块。
#imap协议
import imaplib, getpass, string
host = "imap.dummy .com"
user ="jonny"
pwd = getpass .getpass ()
msgserver = imaplib. IMAP4 (host)
msgserver.login (user, pwd)
msgserver.select()
msgtyp, msgitems = msgserver.search (None, "ALL")
for idx in string.split(msgitems[0]) :
    msgtyp, msgitems = msgserver.fetch(idx, "(RFC822) ")
    print ("Message is %s\n" %msgtyp)
    print ("---------------\n")
    print ("Content: %s" %msgitems[0] [1])
msgserver.logout ()

优秀文章