とある引越しの見積もりサイトから届くメールをスクレイピングし、管理画面から閲覧可能にします。
解析対象のメールは「サービス①(HTML)」と「サービス②(テキスト)」の2パターンあります。
目次
手順①メール取得
メールサーバーで受信したメールを取得するために、fetcmail(メール取得)とprocmail(ディレクトリ振り分け)を使用。
今回は処理しやすいよう、procmailを使用して2つのサービスのメールを振り分けました。
どちらも、サーバーにインストールして設定ファイルを記述するだけなので簡単でした。
手順②スクレイピング
PHPで解析。
サービス①(HTML)
PHPでHTMLを解析するツールはいろいろあるみたいです。
今回はPHP標準のDOMDocumentを使用しました。
XPATHという記述を使用してHTMLから要素を取得しました。
サービス②(テキスト)
PHPのpreg_match関数で正規表現を使用して取得しました。
どちらも、元のメールが簡単な構造だったので悩まずにできました。
複雑なWEBページの解析とかはもうちょっと工夫が必要かもしれません。