使えるシステムから使いたいシステムへ、有限会社アテージ

このところスクレイピングのご相談が多く、HTMLのみであればPHP+Goutte、
JSでページを書き換えているものならNode.js+NightmareJS+Electronを利用しています。

先日もNightmareJSでスクレイピングツールを作ったのですが、
結果をメールに添付して飛ばしてほしいというご要望がございました。

そのときに使ったメール送信モジュール Nodemailer を紹介します。

SMTPでの送信がデフォルトで組み込まれていて、
sendmailコマンドでの送信はモジュールを組み込むことで可能になっています。(PHPとは逆)
その他の送信モジュールはこちら

以下は、画像を入れたHTMLメールにPDFを添付して送信したサンプルです。
説明の必要はないと思いますが、cid(Content-ID)は見慣れない方もいるかもしれません。
HTMLから添付した画像を参照する場合は、添付ファイルのファイル名ではなく、
このIDを使う決まりになっています。https://tools.ietf.org/html/rfc2392
(これはNodemailerに限った話でありません)

日本語はUTF-8を使用します。(これはNodemailerの決まり)

message.html

Gmail宛に送信されたメール