Python imaplib选择文件夹

Python imaplib选择文件夹

问题描述:

我正在使用Django构建邮件客户端,并提取使用imaplib的电子邮件。 到目前为止,我可以选择收件箱文件夹的原因在每个imap服务器它的名称是“INBOX”。但是,当选择其他文件夹,如垃圾邮件,发送和其他我有麻烦,因为他们的名字是基于帐户语言。 对于为例我的帐户设置为俄语语言和上市的邮件是这样的:Python imaplib选择文件夹

mail = imaplib.IMAP4_SSL(IMAP) 
mail.login(USERNAME, PASSWORD) 

for i in mail.list()[1]: 
    print(i) 

给我下面的输出(UTF-7):

b'(\\Inbox) "/" "INBOX"' 
b'(\\Spam) "/" "&BCEEPwQwBDw-"' 
b'(\\Sent) "/" "&BB4EQgQ,BEAEMAQyBDsENQQ9BD0ESwQ1-"' 
b'(\\Drafts) "/" "&BCcENQRABD0EPgQyBDgEOgQ4-"' 
b'(\\Trash) "/" "&BBoEPgRABDcEOAQ9BDA-"' 

我怎么能选择文件夹,尽管选择的帐户语言? 如果我使用:

mail.select("&BBoEPgRABDcEOAQ9BDA-") 

它的工作原理,但我的邮件客户端是没有用的这个样子。

我决定把标准输出,并使用文件夹名称,因为它们是在语言,他们来到:

for i in mail.list()[1]: 
    l = i.decode().split(' "/" ') 
    print(l[0] + " = " + l[1])