LoginSignup
0
7

More than 5 years have passed since last update.

JavaScriptでスクレイピングするなら、SpookyJS

Last updated at Posted at 2017-01-05

導入のきっかけ

社長「このサイトのここの情報をシステム的に取れない?」
わたし「楽勝ですよ」

早速PerlのWeb::Queryでスクレイピングするプログラムを作成し、いざ実行。
欲しいコンテンツが、と、取れない。。

コンテンツのソースコードを確認すると、コンテンツの中身が空だ。
どうやらJavaScriptで生成されるコンテンツらしい。
くそっ、静的コンテンツしか取得できないWeb::Queryではどうしようもないではないか。

CasperJSとの出会い

ググってみたところ、「CasperJS」というサーバーサイドjavascript向けモジュールが存在するらしい。

元々、外部からJavaScriptのAPIを使ってブラウザを操作できるというPhantomJSというヘッドレス(GUIの無い)ブラウザがあって、CasperJSはPhantomJSを便利に使えるモジュールらしい。

ただし、CasperJSは実行する際にnodeコマンドではなくcasperjsコマンドで実行するため、Node.jsで使える機能が使えない。
そこで、Node.jsからCasperJSを使えるようにするモジュールをググってみたところ、SpookyJSに出会った次第。

CasperJSのインストール

Node.js、npmのインストール

# npmをインストールするために、いったんnode.jsをインストール
$ sudo apt-get update
$ sudo apt-get install nodejs npm
$ npm cache clean

# nパッケージでnode.jsを管理
$ sudo npm install n -g
$ sudo n stable

# casperモジュールをインストール
$ sudo npm install phantomjs  -g
$ sudo npm install casperjs -g

SpookyJSのインストール

$ sudo npm install spooky
$ sudo npm install tiny-jsonrpc

困ったこと

SpookyJSのメソッド内でコメント

0
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
7