Ruby - UNIX MBOX メールヘッダ・User-Agent, X-Mailer属性の検証!
Updated:
今日は Ruby で UNIX MBOX メールデータ中のメールヘッダ「User-Agent」属性と「X-Mailer」属性を検証してみました。 以下の過去記事も参照。
- Ruby - UNIX MBOXデータ読み込み!
- Ruby - UNIX MBOX メールヘッダ「Date」検証!
- Ruby - UNIX MBOX メールヘッダ「From」検証!
- Ruby - UNIX MBOX メールヘッダ・アドレス系属性の検証!
- Ruby - UNIX MBOX メールヘッダ・Message-ID系属性の検証!
- Ruby - UNIX MBOX メールヘッダ・Mime-Version属性の検証!
- Ruby - UNIX MBOX メールヘッダ・Content-Type属性の検証!
- Ruby - UNIX MBOX メールヘッダ・Content-Transfer-Encoding属性の検証!
「User-Agent」属性とは RFC 2616 でルール化されているもので、MUA(Mail User Agent, メールクライアント情報)が設定されるもので、 「X-Mailer」属性もメールクライアント情報が設定されるものです。
“X-“で始まる属性は「任意で拡張したヘッダ」なので、RFC でルール化されたものではありません。「X-Mailer」は自然の流れで皆が使うようになったものです。
実際のところ、メールサーバ・メールソフトによって「User-Agent」を使用していたり、「X-Mailer」を使用していたりします。
RFC 2616 については以下も参照
と言うことで、「User-Agent」属性と「X-Mailer」属性のどちらが使用されているのかを Ruby で検証してみました。 どのメールソフトが設定されているかまでは検証していません。 ※必要性を感じた時に検証してみようと思っています。
参考までに、当方の UNIX MBOX メールデータ(61,665件)を検証した結果を掲載します。 ※だから何?と言われそうですが、自分の近い将来のための記録として掲載していますので、ご承知おきください。
Ruby スクリプトは今までの検証で使用してきたものを流用しています。
使用した正規表現
今回は設定されているかどうかを見るだけなので簡単なものになっています。 (1文字以上の文字が設定されているかどうか)
/^(.+)$/
検証結果
「User-Agent」属性、「X-Mailer」属性はそれぞれ1メールに複数設定されることはない属性です。 また、必須で設定されないといけないものでもありません。
総件数 | 61,665 |
非設定 | 47,339 |
User-Agent | 5,500 |
X-Mailer | 1,059 |
両方 | 2,233 |
意外と、「User-Agent」属性と「X-Mailer」属性の両方が設定されているものがありました。
次回は「Subject」を検証してみようかと考えています。
以上。
Comments