将email.Message对象保存到文件中

mim*_*imo 3 python

我正在尝试修改存储为文本文件的电子邮件.我首先导入这样的消息:

import email
f = open('filename')
msg = email.message_from_file(f)
Run Code Online (Sandbox Code Playgroud)

然后,我使用电子邮件模块的功能进行了我想要的所有修改.

最后一步是将Message对象(msg)保存在文件中.执行此操作的代码是什么?似乎没有像"message_to_file()"这样的简单函数......

非常感谢.

Bla*_*rad 5

Messsage.as_string方法应该给你的消息的扁平版本,你可以写出来,就像对其他任何字符串:

msg.as_string()

如果这不能提供您想要的格式,请考虑尝试使用email.generator模块?如果我正确阅读了一些内容,你应该能够做到这样的事情:

generator = email.generator.Generator(out_file)
generator.flatten(msg)
Run Code Online (Sandbox Code Playgroud)

假设out_file是一个开放和可写的文件,这msg是你的消息.