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

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

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

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


该模块定义了类 MimeWriterMimeWriter 类实现了用于创建 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()
这用于指定多部分消息的最后一部分,并且在编写多部分消息时应该使用 始终