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

时间:2010-07-11 11:42:51

标签: python

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

import email
f = open('filename')
msg = email.message_from_file(f)

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

最后一步是将Message对象(msg)保存在文件中。执行此操作的代码是什么?似乎没有像“message_to_file()”......

这样的简单函数

非常感谢。

1 个答案:

答案 0 :(得分:5)

Messsage.as_string method应该为您提供一个可以写出的消息的扁平版本,就像您可以写出任何其他字符串一样:

msg.as_string()

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

generator = email.generator.Generator(out_file)
generator.flatten(msg)

假设out_file是一个开放且可写的文件,而msg就是您的信息。