Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

Anemone gem (ruby) で指定したURLだけクロールする方法

More than 5 years have passed since last update.

1行概要

rubyのgem anemonを使って指定した正規表現のURLだけクロールし続けるサンプル

犯行動機

友人がよからぬ事をしようとしていたので援護射撃

方法

crawl.rb
require 'anemone'

Anemone.crawl('http://example.com/start_page.html') do |anemone|

  # クロールするごとに呼び出される
  anemone.focus_crawl do |page|

    # 条件に一致するリンクだけ残す
    # この `links` はanemoneが次にクロールする候補リスト
    page.links.keep_if { |link|
      link.to_s.match(/detail/)
    } 

  end

  # ここがメインの部分
  anemone.on_every_page do |page|

    # クロールした結果をごにょごにょ
    p page.doc.at('title').inner_html

  end
end

結論

anemoneすごい。

twitterはこちら -> https://twitter.com/tady_jp

tady
formrun(フォームラン)の創業者でした。会社売却後、現在は大企業で研鑽中 mailto:a.dat.jp@gmail.com
https://twitter.com/tady_jp
recruitlifestyle
飲食・美容・旅行領域の情報サイトや『Airレジ』などの業務支援サービスなど、日常消費領域に関わるサービスの提供するリクルートグループの中核企業
http://www.recruit-lifestyle.co.jp/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away