引越しの見積もりサイトから届くメールをスクレイピングしてみる

s_nakamura

とある引越しの見積もりサイトから届くメールをスクレイピングし、管理画面から閲覧可能にします。

解析対象のメールは「サービス①(HTML)」と「サービス②(テキスト)」の2パターンあります。

 

手順①メール取得

メールサーバーで受信したメールを取得するために、fetcmail(メール取得)とprocmail(ディレクトリ振り分け)を使用。

今回は処理しやすいよう、procmailを使用して2つのサービスのメールを振り分けました。

どちらも、サーバーにインストールして設定ファイルを記述するだけなので簡単でした。

手順②スクレイピング

PHPで解析。

サービス①(HTML)

PHPでHTMLを解析するツールはいろいろあるみたいです。
今回はPHP標準のDOMDocumentを使用しました。

XPATHという記述を使用してHTMLから要素を取得しました。

サービス②(テキスト)

PHPのpreg_match関数で正規表現を使用して取得しました。

 

どちらも、元のメールが簡単な構造だったので悩まずにできました。
複雑なWEBページの解析とかはもうちょっと工夫が必要かもしれません。