当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python email.message.Message.as_string用法及代码示例


用法:

as_string(unixfrom=False, maxheaderlen=0, policy=None)

以字符串形式返回整条消息。当可选的unixfrom 为真时,信封头包含在返回的字符串中。 unixfrom 默认为 False 。出于向后兼容的原因,maxheaderlen 默认为 0 ,因此如果您想要不同的值,则必须明确覆盖它(此方法将忽略策略中为 max_line_length 指定的值)。 policy 参数可用于覆盖从消息实例获得的默认策略。这可用于控制该方法生成的一些格式,因为指定的 policy 将传递给 Generator

如果需要填写默认值以完成到字符串的转换(例如,可能会生成或修改 MIME 边界),则展平消息可能会触发对 Message 的更改。

请注意,提供此方法是为了方便,可能并不总是按照您想要的方式格式化消息。例如,默认情况下,它不会对 unix mbox 格式所需的以 From 开头的行进行修改。为了获得更大的灵活性,实例化一个Generator 实例并直接使用它的flatten() 方法。例如:

from io import StringIO
from email.generator import Generator
fp = StringIO()
g = Generator(fp, mangle_from_=True, maxheaderlen=60)
g.flatten(msg)
text = fp.getvalue()

如果消息对象包含未根据 RFC 标准编码的二进制数据,则不符合标准的数据将替换为 unicode “unknown character” 代码点。 (另见 as_bytes()BytesGenerator 。)

在 3.4 版中更改: policy添加了关键字参数。

相关用法


注:本文由纯净天空筛选整理自python.org大神的英文原创作品 email.message.Message.as_string。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。