WindowsでAnemoneを使う
業務でクローラー作る案件を他の人がやってて興味があったので、自分でも少し試してみました。 rubyインストールからAnemone(Ruby製のクローラー)でスクレイピングするまで。
Rubyインストール
chocolateyでrubyとrubygemsをインストールする。 Powershellで以下のコマンドを入力する。
> cinst ruby > ruby --version => ruby 2.1.6p336 (2015-04-13 revision 50298) [x64-mingw32] > cinst rubygems > gem --version => 2.4.1
Anemoneインストール
rubygemsでインストールしようとしたらエラーが出た。
> gem install anemone ERROR: Could not find a valid gem 'anemone' (>= 0), here is why: Unable to download data from https://rubygems.org/ - SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (https://api.rubygems.org/specs.4.8.gz)
rubygemsの証明書が古いのが原因らしいので、以下を参考に新しい証明書を追加する。
参考: bundle install がこけるようになった(改訂版)
新しい証明書を追加したあと、再度gem install anemone
したらインストールできた。
スクリプト作成
Qiitaのトップページ(ログインページ)のURL一覧を取得してみる。
require 'anemone' url = 'http://qiita.com/' opts = { :skip_query_strings => true, :depth_limit => 1 } Anemone.crawl(url, opts) do |anemone| anemone.on_every_page do |page| puts page.url end end
こんな感じで出力される↓