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(): 退出

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

示例

以下代码从 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 帐户已配置为允许安全性较低的应用。

更新于:2019年7月30日

567 次浏览

开启你的职业生涯

完成课程获得认证

开始学习
广告