Python - 自动检测电子邮件内容编码

时间:2016-08-30 19:15:44

标签: python email encoding html-email

我正在编写一个处理电子邮件的脚本,我可以访问电子邮件的原始字符串内容。

我目前正在寻找字符串" Content-Transfer-Encoding:"并扫描紧随其后的字符,以确定编码。示例编码:base64或7bit或quoted-printable ..

有没有更好的方法来自动确定电子邮件编码(至少是更加pythonic方式)?

谢谢。

2 个答案:

答案 0 :(得分:1)

您可以使用此标准Python包:email

例如:

import email

raw = """From: John Doe <example@example.com>
MIME-Version: 1.0
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

Hi there!
"""

my_email = email.message_from_string(raw)
print my_email["Content-Transfer-Encoding"]

请参阅其他示例here

答案 1 :(得分:0)

Python: Is there a way to determine the encoding of text file?有一些很好的答案。基本上没有办法完美可靠地做到这一点,你最初使用的方法是最好的(应该先检查),但如果不是,那么有一些选择有时可以工作。