imaplib 获取格式出现问题:RFC822 unequel utf8?

发布于 2024-12-06 17:25:45 字数 501 浏览 1 评论 0原文

我想阅读 utf8 格式的电子邮件消息。这不适用于以下代码:我想我必须采用不同的格式,但是哪种格式以及如何格式?输出给出了某物。就像“=C3=96sterreich”代表“Österreich”。到目前为止我有这个...谢谢

import imaplib
import email

imap4 = imaplib.IMAP4(SERVER)
imap4.login(USER, PASSWORD)
imap4.select()
typ, data = imap4.search(None,'(UNSEEN SUBJECT "%s")' % subject)
for num in data[0].split():
    typ, data = imap4.fetch(num,'(RFC822)')
    msg = email.message_from_string(data[0][1])
    typ, data = imap4.store(num,'-FLAGS','\\Seen')
    print msg    

I want to read an email messege which is in utf8 format. And this is not working with the following code: I guess i have to take a different format, but which and how? The output gives sth. like "=C3=96sterreich" for "Österreich". So far I have this...Thanx

import imaplib
import email

imap4 = imaplib.IMAP4(SERVER)
imap4.login(USER, PASSWORD)
imap4.select()
typ, data = imap4.search(None,'(UNSEEN SUBJECT "%s")' % subject)
for num in data[0].split():
    typ, data = imap4.fetch(num,'(RFC822)')
    msg = email.message_from_string(data[0][1])
    typ, data = imap4.store(num,'-FLAGS','\\Seen')
    print msg    

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

淡忘如思 2024-12-13 17:25:45

MIME 容器中的数据通常使用“quoted-printable”编解码器进行编码。我不知道 imaplib 的内部结构,但我相信您正在寻找的是 quopri.decodestring()

Data in MIME containers is usually encoded using “quoted-printable” codec. I don't know the internals of imaplib but I believe what you're looking for is quopri.decodestring().

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文