使用IMAP读取已发送邮件中的新邮件

1 投票
2 回答
2646 浏览
提问于 2025-04-17 12:02

我正在尝试通过IMAP从Gmail的已发送邮件文件夹中获取新邮件,但在已发送文件夹里,所有的邮件都有一个叫做\Seen的标记。这意味着我无法获取到最新的邮件。

imap_conn.select("[Gmail]/Sent Mail")

typ, data = imap_conn.search(None,since_date,'UnSeen')

有没有人知道怎么才能从已发送文件夹中获取新邮件呢?

2 个回答

0

虽然这个方法没有Gryphius的答案那么高效,但你可以创建一个自定义的IMAP标记,然后用这个自定义标记来标记你已经查看过的所有邮件。

这里有一个来自Stack Overflow的例子:

javamail:在IMAP邮件上设置自定义标记并搜索带有自定义标记的邮件

3

要查看你“已发送邮件”文件夹的名称,可以检查:

mail.list()

确保在你的字符串中使用额外的引号,比如:

imap_conn.select('"[Gmail]/Sent Mail"')  

这样做对我有效。

撰写回答