2

我正在尝试使用这样的 imap 从 gmail 获取一些电子邮件信息

"(BODY.PEEK[HEADER.FIELDS (subject from date)] X-GM-MSGID X-GM-LABELS X-GM-THRID)"

问题是它不适用于特殊和重音字符。例如,

Stéphane Maniaci

呈现为

=?ISO-8859-1?Q?St=E9phane_Maniaci?=

我如何告诉 Gmail 返回带有我选择的编码的字符串,比如我希望 Charset 为 UTF-8。

如何在我上面提到的 IMAP 命令中调整它?

4

1 回答 1

4

好的。我发现 email.utils 在这里可以提供很多帮助。

它具有从 imap 消息中解析日期、电子邮件和任何其他信息的方法。

它还具有解码 imap 字符串的方法。像这样

from email.header import decode_header
value, charset = decode_header(string_to_be_decoded)
于 2011-08-18T16:31:18.953 回答