poplib标记如所见

时间:2013-07-23 07:56:13

标签: python-3.x poplib

我在Python 3.3中使用poplib从gmail帐户中获取电子邮件,一切运行正常,只是在使用retr()方法检索邮件后,邮件未标记为已读取,尽管事实{{1} 3}}说“检索整个消息号哪个,并设置其看到的标志。”

以下是代码:

pop = poplib.POP3_SSL("pop.gmail.com", "995")
pop.user("recent:mymail@gmail.com")
pop.pass_("mypassword")
numMessages = len(pop.list()[1])
for i in range(numMessages):
    for j in pop.retr(i+1)[1]:
        print(j)
pop.quit()

我做错了什么或文件说谎了吗? (或者,我只是误解了它?)

1 个答案:

答案 0 :(得分:4)

POP协议没有“读取”或“未读”消息的概念; LIST命令只显示所有现有消息。如果服务器支持,您可能需要使用其他协议,如IMAP。

您可以使用DELE命令在成功检索后删除邮件。只有在成功的QUIT命令之后,服务器才会实际删除它们。