email.utils モジュールではいくつかの便利なユーティリティを提供しています。
str) |
str) |
address) |
(realname, email_address)
にして返します。
失敗した場合は 2要素のタプル ('', '')
を返します。
pair) |
(realname, email_address)
を引数にとり、
To: あるいは Cc: ヘッダに適した形式の文字列を
返します。タプル pair の第1要素が偽である場合、第2要素の値を
そのまま返します。
fieldvalues) |
parseaddr()
と同じ形式で返します。
fieldvalues はたとえば Message.get_all() が返すような、
ヘッダのフィールド値からなるシーケンスです。以下はある電子メールメッセージから
すべての受け取り人を得る一例です:
from email.utils import getaddresses tos = msg.get_all('to', []) ccs = msg.get_all('cc', []) resent_tos = msg.get_all('resent-to', []) resent_ccs = msg.get_all('resent-cc', []) all_recipients = getaddresses(tos + ccs + resent_tos + resent_ccs)
date) |
"Mon, 20 Nov 1995 19:12:08 -0500"
のような形をしています。
日付の解析に成功した場合、parsedate() は
関数 time.mktime() に直接渡せる形式の
9要素からなるタプルを返し、失敗した場合は None
を返します。
返されるタプルの 6、7、8番目のフィールドは有効ではないので注意してください。
date) |
None
または 10要素のタプルを返すところが違います。
最初の 9つの要素は time.mktime() に直接渡せる形式のものであり、
最後の 10番目の要素は、その日付の時間帯の UTC
(グリニッジ標準時の公式な呼び名です) に対するオフセットです
7.6。
入力された文字列に時間帯が指定されていなかった場合、10番目の要素には
None
が入ります。
タプルの 6、7、8番目のフィールドは有効ではないので注意してください。
tuple) |
None
である場合、
時間帯として現地時間 (localtime) が仮定されます。
マイナーな欠点: mktime_tz() はまず tuple の最初の 8要素を
localtime として変換し、つぎに時間帯の差を加味しています。
夏時間を使っている場合には、これは通常の使用にはさしつかえないものの、
わずかな誤差を生じるかもしれません。
[timeval[, localtime][, usegmt]]) |
Fri, 09 Nov 2001 01:08:47 -0000
オプションとして float 型の値をもつ引数 timeval が与えられた場合、 これは time.gmtime() および time.localtime() に 渡されます。それ以外の場合、現在の時刻が使われます。
オプション引数 localtime はフラグです。
これが True
の場合、この関数は timeval を解析したあと
UTC のかわりに現地時間 (localtime) の時間帯をつかって変換します。
おそらく夏時間も考慮に入れられるでしょう。
デフォルトではこの値は False
で、UTC が使われます。
オプション引数 usegmt が True
のときは、タイムゾーンを表すのに
数値の -0000
ではなく ascii文字列である GMT
が使われます。
これは (HTTP などの) いくつかのプロトコルで必要です。
この機能は localtime が False
のときのみ適用されます。
バージョン 2.4 で 新たに追加 された仕様です。
[idstring]) |
s) |
s[, charset[, language]]) |
value[, errors[, fallback_charset]]) |
replace
となっています。
オプション引数 fallback_charset は、もし RFC 2231 ヘッダの使用している
文字セットが Python の知っているものではなかった場合の非常用文字セットとして
使われます。デフォルトでは、この値は us-ascii
です。
便宜上、collapse_rfc2231_value() に渡された引数 value が タプルでない場合には、これは文字列である必要があります。その場合には unquote された文字列が返されます。
params) |
(content-type, string-value)
のような形式の
2要素からなるタプルです。
バージョン 2.4 で 変更 された仕様: dump_address_pair() 関数は撤去されました。かわりに formataddr() 関数を使ってください。
バージョン 2.4 で 変更 された仕様: decode() 関数は撤去されました。かわりに Header.decode_header() メソッドを使ってください。
バージョン 2.4 で 変更 された仕様: encode() 関数は撤去されました。かわりに Header.encode() メソッドを使ってください。
time.timezone
の値と
符合が逆です。これは time.timezone
が POSIX 標準に準拠しているのに対して、
こちらは RFC 2822 に準拠しているからです。