Gmail的收件箱文件夹路径?

时间:2012-08-14 05:08:36

标签: ios path gmail gmail-imap inbox

我正在开发一个应该阅读和发送邮件的iOS应用程序。为了访问收件箱文件夹,我使用了“INBOX”。它适用于雅虎和AOL,但不适用于Gmail。有人告诉我尝试“[Gmail]”,“[Gmail] /所有邮件”,“Gmail / [所有邮件]”。我已经尝试了所有这些,但它们都没有工作。重要的是,如果我写“[Gmail] /垃圾邮件”或“[Gmail] /垃圾邮件”,它可以正常工作。所以关键是我可以访问除收件箱之外的所有文件夹的邮件。如何访问gmail的收件箱文件夹?

2 个答案:

答案 0 :(得分:1)

使用"Inbox"可以帮助我使用python3和imaplib访问GMail。以下是如何获取所有有效文件夹名称的列表并确保:

import imaplib
mail = imaplib.IMAP4_SSL('imap.gmail.com')
mail.login('username', 'password')
print(mail.list())

对我来说,部分返回值为:"INBOX"(收件箱),"PERSONAL"(标签),"[Gmail]/Drafts"(GMail草稿),"[Gmail]/Sent Mail"(GMail发送物品)。

登录后,只需选择“收件箱”文件夹,然后使用查询搜索文件夹的内容。例如,这将返回"Inbox"文件夹中电子邮件的主题列表:

# mail is the imap object from the previous listing
mail.select('"INBOX"')
result, data = mail.search(None, "ALL")

for e_id in data[0].split()[-10:]:
    _, response = mail.fetch(e_id, '(body[header.fields (subject)])')
    print(response[0][1][9:])

"[Gmail]/Drafts"失败的情况下"[Gmail]/Sent Mail"可能成功的原因是您没有引用具有带双周引号的空格的文件夹名称。以下是如何在python3中执行此操作:

# mail is the imap object from the previous listing
mail.select('"[Gmail]/Sent Mail"') # notice the double quotes as a part of the folder name
result, data = mail.search(None, "ALL")

答案 1 :(得分:1)

解决了这个问题
"[Gmail]/All Mail"