|
Perl Email Project というプロジェクトで開発されている Perl のメール処理モジュール群がかなり充実しています。 「ファイル添付メール」や「HTMLメール」などの「MIME マルチパートメール」は 自前のコードで処理するのは結構面倒で、多様な MTA に対応するのは難しく バグも発生しやすい状況でしたが、この Email::MIME モジュール達を利用すると、 手軽にマルチパートメールを扱えるようになります。 以下のサンプルコードは、sample-in.eml ファイルのメールの本文中にある 文字列『FOO』を『BAR』に置換して、sample-out.eml として出力する例。 マルチパートの有無、plain テキスト、HTML メールの本文どれも置換できます。 (添付されたテキストファイルの中身も置換しちゃいます) メールの件名などのヘッダ類、添付画像ファイルなどは置換しません。 #!/usr/bin/perl 要は、modmail サブルーチンの数行だけで、やりたいことができます。 置換した文字列以外の部分は、エンコーディングも含めて元のメールを そのまま再現してくれるので、副作用が少なそうな点も安心です。 『オマジナイ』と書いてある行は、ダミーで空(0個)のパートをメールに 追加しています。この行がないと、置換した本文が出力結果に反映されません。 たぶん、モジュール側のバグなんじゃないでしょうか。 (バージョンは Email::Simple 1.999、Email::MIME 1.859 です) (オマケ情報) 携帯電話の絵文字を含む日本語のメール送信用で EmailJP.pm モジュール といのを かつて公開したこともありました。各キャリアの絵文字自動変換処理付。 しばらく更新していないので、最新携帯でうまく動くか分かりませんが。 Email::MIME の携帯絵文字対応版とか、欲しいね。 |
| << 前記事(2007/06/04) | トップへ | 後記事(2007/06/13)>> |
| タイトル (本文) | ブログ名/日時 |
|---|
| 内 容 | ニックネーム/日時 |
|---|
| << 前記事(2007/06/04) | トップへ | 後記事(2007/06/13)>> |