18.8. MimeWriter — 通用 MIME 文件编写器 — Python 文档

来自菜鸟教程
Python/docs/2.7/library/mimewriter
跳转至:导航、​搜索

18.8. 哑剧作家 — 通用 MIME 文件编写器

自 2.3 版起已弃用:email 包应优先于 MimeWriter 模块使用。 该模块的存在只是为了保持向后兼容性。


该模块定义了类 MimeWriter。 MimeWriter 类实现了用于创建 MIME 多部分文件的基本格式化程序。 它不会搜索输出文件,也不会使用大量缓冲区空间。 您必须按照它们在最终文件中出现的顺序写出这些部分。 MimeWriter 确实缓冲了您添加的标题,允许您重新排列它们的顺序。

class MimeWriter.MimeWriter(fp)
返回 MimeWriter 类的新实例。 传递的唯一参数 fp 是用于写入的文件对象。 请注意,也可以使用 StringIO 对象。

18.8.1. MimeWriter 对象

MimeWriter 实例有以下方法:

MimeWriter.addheader(key, value[, prefix])
向 MIME 消息添加标题行。 key 是头部的名称,其中 value 显然提供了头部的值。 可选参数 prefix 确定插入头的位置; 0 表示末尾追加,1 开头插入。 默认是追加。
MimeWriter.flushheaders()
导致到目前为止累积的所有标题都被写出(并忘记)。 如果您根本不需要身体部位,这很有用,例如 对于 message/rfc822 类型的子部分,它(错误)用于存储一些类似标题的信息。
MimeWriter.startbody(ctype[, plist[, prefix]])
返回一个类似文件的对象,该对象可用于写入消息正文。 内容类型设置为提供的 ctype,可选参数 plist 为内容类型声明提供附加参数。 prefix 的功能与 addheader() 相同,但默认是在开头插入。
MimeWriter.startmultipartbody(subtype[, boundary[, plist[, prefix]]])
返回一个类似文件的对象,该对象可用于写入消息正文。 此外,该方法初始化多部分代码,其中 subtype 提供多部分子类型,boundary 可能提供用户定义的边界规范,plist 提供可选子类型的参数。 prefix 的功能与 startbody() 相同。 子部件应使用 nextpart() 创建。
MimeWriter.nextpart()
返回 MimeWriter 的新实例,它表示多部分消息中的单个部分。 这可用于编写部分以及用于创建递归复杂的多部分消息。 在使用 nextpart() 之前,必须首先使用 startmultipartbody() 初始化消息。
MimeWriter.lastpart()
这用于指定多部分消息的最后一部分,并且在编写多部分消息时应该使用 始终 。