前回は、JavaScriptを利用してログインが必要なサイトに自動ログインするプログラムを紹介しました。前回はWindows上でInternet Explorerを操作する処理を実現しました。
しかしWindowsではなく、Mac OS XやLinuxを利用している人もいるでしょう。そこで今回は、OSに依存しない方法で自動ログインを実現するために、「PhantomJS」というツールを使う方法を紹介します。その簡単な例として、TwitterのWebサイトに自動ログインして、任意のメッセージをつぶやくプログラムを作ってみます。
PhantomJSとは?
今回利用するPhantomJSとは、コマンドラインからJavaScriptを実行できるツールです。WebブラウザーのApple SafariやGoogle Chromeの描画エンジンである「WebKit」を利用して作られています。そのため、コマンドラインから操作するプログラムでありながら、Webブラウザーと似た動作を実装できます。Webサイトにログインして特定のデータを取得したり、Webページのキャプチャーを撮ったりと、ブラウザーで行っている各種タスクを自動化するのに便利です。
PhantomJSは、次のURLからダウンロードすることができます。Windows/Mac OS X/Linuxのバイナリーファイルをダウンロードできます。今回のプログラムを動かすには、このPhantomJSが必要です。
PhantomJSのダウンロードページ:http://phantomjs.org/download.html
PhantomJSのアーカイブをダウンロードしたら、ZIPファイルを解凍し、binフォルダーに入っている、phantomjsというファイル(Windowsの場合はphantomjs.exe)を利用します。