关于使用imaplib的IMAP UID

0 投票
2 回答
6518 浏览
提问于 2025-04-16 03:34

我想把Gmail邮箱里的邮件移动到另一个邮箱。只是好奇一下,邮件在移动到新邮箱时,UID(唯一标识符)会改变吗?

2 个回答

1

我查看了自己用来处理Gmail的IMAP代码,其中有个评论提到,当你移动邮件时,UID会发生变化,因为移动实际上是先复制再删除。或者也可能是我做错了什么:

    imap.copy(sid, dest_folder)
    imap.store(sid, '+FLAGS', '\\Deleted')
    imap.expunge()

-- 不过,如果你知道怎么直接移动邮件,那UID就不应该改变。

5

当然,当你进行移动操作时,UID会发生变化。新的UID会是目标文件夹中下一个可用的UID。
比如,如果目标文件夹中最后一封邮件的UID是9332,那么移动后的邮件UID就会是9333。

需要注意的是:虽然UID会改变,但邮件的Message-Id在任何操作中都不会改变。

撰写回答