這個模塊定義定義了一個關於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'。子類型以小寫字母的傳輸。