我在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()
我做错了什么或文件说谎了吗? (或者,我只是误解了它?)
答案 0 :(得分:4)
POP协议没有“读取”或“未读”消息的概念; LIST命令只显示所有现有消息。如果服务器支持,您可能需要使用其他协议,如IMAP。
您可以使用DELE命令在成功检索后删除邮件。只有在成功的QUIT命令之后,服务器才会实际删除它们。