Python中的POP3协议客户端

Python标准库中的poolib模块定义了POP3和POP3_SSL类。POP3类封装与POP3服务器的连接,并实现RFC 1939中定义的协议。POP3_SSL类支持将SSL用作基础协议层的POP3服务器。

POP3协议已过时,因为其POP3服务器的实现质量相当差。如果您的邮件服务器支持IMAP,则建议使用imaplib.IMAP4类。

这两个类都定义了以下方法-

getwelcome()

返回POP3服务器发送的问候字符串。

user(username)

发送用户命令,响应应指示要求输入密码。

pass_(password)

发送密码。

Stat()

获取邮箱状态。结果包含2个整数:(邮件数,邮箱大小)。

list()

请求消息列表,结果的格式为(响应,['mesg_num个八位字节,...],八位字节)。

retr()

检索指定索引的消息,并设置其可见标志。

Dele()

标记要删除的消息号。

Top()

检索消息标题和消息标题之后的行数

quit(): Signoff

提交更改,解锁邮箱,断开连接。

例子

以下代码从gmail的POP服务器中检索所有未读邮件。

import poplib
box = poplib.POP3_SSL('pop.googlemail.com', '995')
box.user("YourGmailUserName")
box.pass_('YourPassword')
N = len(box.list()[1])
for i in range(N):
   for msg in box.retr(i+1)[1]:
      print (msg)
box.quit()

在运行上述脚本之前,请确保将您的gmail帐户配置为允许安全性较低的应用。