【发布时间】:2015-03-20 16:56:49
【问题描述】:
使用 email.header 包,我可以做到
the_text,the_charset = decode_header(inputText)
获取电子邮件标题的字符集,其中 inputText 是通过类似的命令检索的
inputText = msg.get('From')
以 From: 标头为例。
为了提取该标头的标头编码,我必须做这样的事情吗?:
the_header_encoding = email.charset.Charset(the_charset).header_encoding
也就是说,我是否必须根据字符集的名称创建 Charset 类的实例(这甚至可以工作吗?),或者有没有办法更直接地从标头本身提取标头编码?
【问题讨论】:
-
decode_header根据需要从 base64 或引用的可打印编码解码标头;the_charset组件是标头中声明的 codec。 -
@MartijnPieters 这就是我对 decode_header 的理解,但由于其他原因,我仍然需要知道标头是否经过 base64 编码。我可以通过我建议的方法获取该信息吗?还是有更简单的方法?
-
我不确定我是否理解您在寻找什么。你想知道header是否使用Encoded-Word syntax,如果是,是否使用了base64或quoted-printable?
-
请注意,标头可以包含多个编码字部分,并且每个部分都可能使用不同编码!在那种情况下你想要整个列表吗?
-
标签: python-2.7 email