这个模块定义定义了一个关于rfc822相关的子类Message类,和必定量的功能函数来操做MIME的多部件或者编码的信息。html
定义了后面的组件:python
class mimetools.Message(fp[, seekable])dom
返回一个新的Message类的实例,这是rfc822.Message类的一个子类,有许多额外的方法,seekable参数与rfc822.Message有一样的意义函数
mimetools.choose_boundary()ui
返回一个字符串,它有很高的可能性做为一个分界线来使用。这个字符串的形式是:'hostipaddr.uid.pid.timestamp.random'编码
mimetools.decode(input, output, encoding)spa
使用MIME的encoding编码的方式从打开文件对象input写数据到打开文件对象output。有效的encoding值包括'base64', 'quoted-printable', 'uuencode', 'x-uuencode', 'uue', 'x-uue', '7bit','8bit'解码信息用'7bit'或者'8bit'是无效的,input就是简单的拷贝到outputcode
mimetools.encode(input, output, encoding)¶orm
从input打开的文件对象中读数据,使用MIME中的encoding方式来写数据到打开的文件对象output中。encoding的有效值和decode的是同样的。htm
mimetools.copyliteral(input, output)
从打开的文件input中读取多行直到EOF为止,以后把数据写入打开的文件output中。
mimetools.copybinary(input, output)
从打开的文件input中读取数块数据直到EOF为止,以后把数据写入打开的文件output。块大小目前修改成8192
消息对象的添加的方法:
Message类定义了除了rfc822.Message方法以外的其余方法:
Message.getplist()¶
返回Content-Type头的列表,这是字符串列表。参数是以key=value 的形式,key是一个小写字母,可是value不是。例如,若是信息包含头Content-type: text/html; spam=1;Spam=2; Spam,所以getplist将返回列表['spam=1', 'spam=2', 'Spam'].
Message.getparam(name)¶
返回以给出的以name=value的形式的第一个name的值value,若是值是在引用的范围内以‘<...>‘ or ‘"..."‘的形式,这些将会被移除
Message.getencoding()¶
返回Content-Transfer-Encoding信息头,若是这样的头不存在则返回'7bit',它的编码以小写字母传输
Message.gettype()¶
返回Content-Type头中以type/subtype方式存在的的信息类型,若是这样的头不存在则返回'text/plain'。类型也是以小写的方式传输。
Message.getmaintype()¶
返回Content-Type头中的主类型,若是不存在这样的头信息则返回'text'。主类型以小写字母的传输。
Message.getsubtype()
返回Content-Type头中的子类型,若是不存在这样的头信息则返回'plain'。子类型以小写字母的传输。