gpt4 book ai didi

python imaplib - 将电子邮件标记为未读或未看到

转载 作者:太空狗 更新时间:2023-10-29 21:22:31 24 4
gpt4 key购买 nike

在这里和互联网上搜索,有很多关于如何将消息标记为 SEEN 的示例,即使这是使用 imap 自动完成的。

但是如何将电子邮件标记为 UNSEENUNREAD

我有一个 python 脚本,它接收 UNSEEN 消息,而且效果很好。但是在阅读它们之后,imap 会自动将它们标记为 SEEN 这可以正常工作,但前提是脚本没有错误,因为如果它引发异常,我希望将电子邮件再次标记为 UNSEEN ,所以下次脚本将再次读取该消息。

我怎样才能做到这一点?

我也使用过 mail.select(mail_label,readonly=True),但它没有帮助,因为我无法将邮件标记为 SEEN 我还需要。我也希望它能与 Gmail 一起使用。

最佳答案

您可以使用此命令轻松清除 \Seen 标志:

tag UID STORE -FLAGS (\Seen)

但是如果您只在成功处理一条消息后首先设置 \Seen 标志,您的软件可能会更健壮。这样,如果您在处理消息时出现任何问题(即使与 IMAP 服务器的连接断开),该标志仍​​未设置,您可以在下次脚本运行时重试该消息。为此,您可以使用 BODY.PEEK 而不是 BODY 来避免 IMAP 服务器自动设置 \Seen 标志。

在 Python 中,我认为 STORE 命令应该像这样发出,但我还没有尝试过。

connection.uid('STORE', '-FLAGS', '(\Seen)')

关于python imaplib - 将电子邮件标记为未读或未看到,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17367611/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com