Google 先生に聞いても意外とわからなかったウェブスクレイピング実践編2
先ポストの続きです。
今回はもう少し複雑なことを実施してみます。Nokogiri だけでなく、Ruby 用スクレイピングフレームワーク Anemone を使います。
やりたいこと4:自分が観た映画のリストの取得
正規表現書き途中で自信がないですが・・・
1 | # -- coding: utf-8 |
ruby sample4.rb
結果です。
1 | "ファンタスティック・ビーストと魔法使いの旅" |
“ファンタスティック・ビーストと魔法使いの旅”
“3.5”
“ローグ・ワン/スター・ウォーズ・ストーリー”
“4.0”
“ブルーに生まれついて”
“4.2”
“湯を沸かすほどの熱い愛”
“5.0”
(以下省略) ```
こんな形で好きな要素を複数取ってくることもできました。が、だいたいusername?page=5までで止まっているようです。
やりたいこと6:Clips で試してみる
正規表現の部分がおかしいのだと思いますが、うまくいっていないため、今度は観た映画ではなく、観たい映画としてクリップしているタイトルとその平均スコアを取ってきたいと思います。
場所はhttp://…/users/hogehoge/clips?=<数字>です。
1 | # Clips は配下ディレクトリにあるため、観た映画より試しやすいです。 |
実行しますruby example6.rb
結果抜粋です。
1 | "ディア・ハンター" |
こちらはきちんと全部取り出せていました。
参照
Anemoneによるクローラー入門
Anemone - Information and Examples
パイプ以外にも便利な表現が沢山ありますね。
XPath Cheat Sheet