我正在使用 Django 构建邮件客户端,并使用 imaplib 提取电子邮件。到目前为止,我可以在每个 imap 服务器中选择收件箱文件夹,因为它的名称是“收件箱”。但是在选择其他文件夹(如垃圾邮件、已发送和其他文件夹)时,我遇到了麻烦,因为它们的名称基于帐户语言。例如,我的帐户设置为俄语并列出如下邮件:
mail = imaplib.IMAP4_SSL(IMAP)
mail.login(USERNAME, PASSWORD)
for i in mail.list()[1]:
print(i)
Run Code Online (Sandbox Code Playgroud)
给我以下输出(utf-7):
b'(\\Inbox) "/" "INBOX"'
b'(\\Spam) "/" "&BCEEPwQwBDw-"'
b'(\\Sent) "/" "&BB4EQgQ,BEAEMAQyBDsENQQ9BD0ESwQ1-"'
b'(\\Drafts) "/" "&BCcENQRABD0EPgQyBDgEOgQ4-"'
b'(\\Trash) "/" "&BBoEPgRABDcEOAQ9BDA-"'
Run Code Online (Sandbox Code Playgroud)
尽管帐户选择了语言,我如何选择文件夹?如果我使用:
mail.select("&BBoEPgRABDcEOAQ9BDA-")
Run Code Online (Sandbox Code Playgroud)
它有效,但我的邮件客户端像这样没用。