
665
21
Email、MIME
與其他網路編碼
在網路上傳送的是位元組的串流(streams of bytes),位元組在網路的術
語中也叫做
octets
。當然,位元組可以表示文字(text),藉由數種可能的
編碼。然而,你要透過網路傳送的,經常是比文字或位元組串流更有結構
的東西。Multipurpose Internet Mail Extensions(MIME)與其他的編碼標
準滿足了這個需求,規範如何將有結構的資料表示為位元組或文字。雖然
原本是為 email 所設計的,這種編碼也被用在 web 及許多其他的網路系統
中。Python 透過許多程式庫模組支援這種編碼,例如
base64
、
quopri
與
uu
(涵蓋於後面的「將二進位資料編碼為 ASCII 文字」),以及
email
套件的
模組(涵蓋於「MIME 與 Email 的格式處理」)。
MIME 與 Email 的格式處理
email
套件處理 MIME 檔案的剖析(parsing)、產生和操作,例如 email 訊
息、Network News(NNTP)的貼文(posts)、 HTTP 的互動,諸如此類
的。Python 標準程式庫也含有其他的模組可以處理這些工作的某些部份。
然而,
email
套件為這些重要的任務提供了一種完整且系統化的做法。我
們推薦你使用
email
,而非功能性與
email
有部分重疊的那些舊有模組。
email
,儘管名稱如此,實際上與電子郵件(email)的接收或發送沒什麼關
係,對於這種任務,請參閱模組
poplib
與
smtplib ...