Message インスタンスは以下のメソッドを持っています:
) |
line) |
None
を返します (解析をここで一度中断し、
行データを入力ストリームに押し戻すことを意味します)。
このメソッドをサブクラスで上書きすると便利なことがあります。
line) |
line) |
False
を返し
ますが、サブクラスで上書きすることもできます。
name) |
name) |
None
を返します。
name) |
None
を返します。
name[, default]) |
getrawheader(name)
に似ていますが、先頭および末尾の
空白を剥ぎ取ります。途中にある空白は剥ぎ取られません。
オプションの default 引数は、name に一致する
ヘッダが存在しない場合に、別のデフォルト値を返すように指定する
ために使われます。
name[, default]) |
name) |
getheader(name)
が返した文字列を解析して、
(full name, email address)
からなるペアを返します。
name に一致するヘッダが無い場合、(None, None)
が返され
ます; そうでない場合、full name および address は
(空文字列をとりうる) 文字列になります。
例: m に最初の From: ヘッダに文字列
'jack@cwi.nl (Jack Jansen)'
が入っている場合、
m.getaddr('From')
はペア
('Jack Jansen', 'jack@cwi.nl')
になります。
また、'Jack Jansen <jack@cwi.nl>'
であっても、全く同じ結果に
なります。
name) |
getaddr(list)
に似ていますが、複数のメイルアドレス
からなるリストが入ったヘッダ (例えば To: ヘッダ) を
解析し、 (full name, email address)
のペア
からなるリストを (たとえヘッダには一つしかアドレスが入っていなかった
としても) 返します。name に一致するヘッダが無かった場合、
空のリストを返します。
指定された名前に一致する複数のヘッダが存在する場合 (例えば、 複数の Cc: ヘッダが存在する場合)、全てのアドレスを 解析します。指定されたヘッダが連続する行に収められている場合も 解析されます。
name) |
None
を返します。
日付の解析は妖術のようなものであり、全てのヘッダが標準に従って いるとは限りません。このメソッドは多くの発信源から集められた 膨大な数の電子メールでテストされており、正しく動作することが 分かっていますが、間違った結果を出力してしまう可能性はまだ あります。
name) |
None
を返します。
Message インスタンスはまた、限定的なマップ型のインタフェースを
持っています。
すなわち: m[name]
は m.getheader(name)
に似て
いますが、一致するヘッダがない場合 KeyError を送出します;
len(m)
、
m.get(name[, default])
、
m.has_key(name)
, m.keys()
、
m.values()
m.items()
、および
m.setdefault(name[, default])
は期待通りに動作します。ただし setdefault() は標準の設定値
として空文字列をとります。 Message インスタンスはまた、
マップ型への書き込みを行えるインタフェース m[name] =
value
および del m[name]
をサポートしています。
Message オブジェクトでは、 clear()、 copy()、
popitem()、あるいは update() といったマップ型
インタフェースのメソッドはサポートしていません。
(get() および setdefault() のサポートは Python
2.2 でしか追加されていません。)
最後に、Message インスタンスはいくつかの public なインスタンス 変数を持っています:
mbox
形式のメイルボックス
ファイルのような、あるコンテキスト中のメッセージを再生成するために
必要です。
ご意見やご指摘をお寄せになりたい方は、 このドキュメントについて... をご覧ください。