Python / imaplib - 如何获取邮件标签?

时间:2011-05-25 10:41:44

标签: python gmail imaplib

我使用imaplib进行项目,因为我需要访问gmails帐户。 事实:使用gmail的标签,每条消息可能位于任意数量的文件夹/盒子/标签上。

问题在于我希望从每条消息中获取每个标签。

我想到的第一个解决方案是使用" All Mail"获取所有邮件的文件夹,然后,对于每封邮件,检查该邮件是否在每个可用文件夹中。

然而,我发现这个解决方案很重,我想知道是否有更好的方法来做到这一点。

谢谢!

2 个答案:

答案 0 :(得分:13)

要获取gmail中给定邮件的所有标签,您可以执行以下操作

t, d = imapconn.uid('FETCH', uid, '(X-GM-LABELS)')
or
t, d = imapconn.fetch(uid, '(X-GM-LABELS)')

BTW:您可以在http://code.google.com/apis/gmail/imap/

找到有关gmail imap扩展程序的更多信息

答案 1 :(得分:0)

在imap中你没有标签,gmail'在imap上模仿'它们,你可以低估从imap中挑选的消息的原始来源,检查它是否有一些带有标签的自定义标题