无法获取 imap.append 来发送日期

问题描述 投票:0回答:1

我正在编写一个非常基本的电子邮件客户端,作为一个更大项目的一部分,并且有一个问题。使用 SMTP,发送电子邮件,一切顺利。我正在使用 IMAP 将电子邮件副本发送到“已发送邮件”文件夹。除了一件事之外,这也有效。 imap.append 未设置日期。电子邮件被复制,但没有日期。

代码非常基础。创建日期:

date_now = imaplib.Time2Internaldate(time.time())

我登录等,然后imap.append调用:

imap.append('"Sent Items"', '\\Seen', date_now, text.encode('utf8'))

发送的电子邮件上没有日期。我检查了 date_now 输出的结果,它应该是这样的:

“2024 年 5 月 3 日 11:32:54 -0600”

有什么建议吗?

python imap
1个回答
0
投票

每条消息都有两个日期(然后还有更多日期)。如果您在 10:01:00 发送邮件,并于 10:02:00 到达收件人的收件箱,则前一个日期可在

Date:
字段和 IMAP
ENVELOPE
结构中找到。
您发送的日期使用 APPEND 设置是后者。

如果你想设置前者,你需要构造一个

Date:
标头字段。(你可能确实想要它,因为它是 required。)

© www.soinside.com 2019 - 2024. All rights reserved.