mimetools
mimetools — Tools for parsing MIME messages
自2.3版弃用:email
应优先使用软件包mimetools
。此模块仅用于保持向后兼容性,并且已在3.x中删除。
该模块定义了rfc822
模块Message
类的子类和一些对MIME多部分或编码消息的操作很有用的实用函数。
它定义了以下项目:
class mimetools.Message(fp[, seekable])
返回Message
该类的新实例。这是rfc822.Message
该类的一个子类,有一些额外的方法(见下文)。可寻求的
论点与之
相同rfc822.Message
。
mimetools.choose_boundary()
返回一个唯一的字符串,它很可能被用作部分边界。该字符串具有表单'hostipaddr.uid.pid.timestamp.random'
。
mimetools.decode(input, output, encoding)
从打开的文件对象输入中
读取使用允许的MIME 编码编码
的数据,并写入解码的数据以打开文件对象输出
。为有效值编码
包括,,,,,,,和。对已编码
或已无效的讯息进行解码。输入只是复制到输出
。'base64''quoted-printable''uuencode''x-uuencode''uue''x-uue''7bit''8bit''7bit''8bit'
mimetools.encode(input, output, encoding)
从打开的文件对象输入中
读取数据,并使用允许的MIME 编码
将其编码
,以打开文件对象输出
。编码的
有效值与for相同decode()
。
mimetools.copyliteral(input, output)
从打开的文件输入中
读取行直到EOF,并将它们写入打开文件输出
。
mimetools.copybinary(input, output)
从开放文件输入
读取块直到EOF,并将它们写入打开文件输出
。块大小目前固定在8192。
1.消息对象的附加方法
在Message
类定义,除了下面的方法rfc822.Message
方法:
Message.getplist()
返回Content-Type
头的参数列表。这是一个字符串列表。对于表单的参数key=value
,键
被转换为小写,但值
不是。例如,如果该消息中包含标题Content-type: text/html; spam=1; Spam=2; Spam
,然后getplist()
将返回Python列表['spam=1', 'spam=2', 'Spam']
。
Message.getparam(name)
返回给定名称的表单的第一个参数(由返回的值)的值。如果值由' ... '或' ... ' 形式的引号包围,则会删除这些值。getplist()name=value<>""
Message.getencoding()
返回Content-Transfer-Encoding
消息头中指定的编码
。如果不存在这样的头部,则返回'7bit'
。编码转换为小写。
Message.gettype()
type/subtype
按照Content-Type
标题中指定的方式返回(表单的)消息类型。如果不存在这样的头部,则返回'text/plain'
。该类型转换为小写。
Message.getmaintype()
返回Content-Type
头中指定的主类型。如果不存在这样的头部,则返回'text'
。主要类型转换为小写。
Message.getsubtype()
按照Content-Type
标题中的指定返回子类型
。如果不存在这样的头部,则返回'plain'
。子类型
转换为小写。