読者です 読者をやめる 読者になる 読者になる

楽天koboの検索結果をクローリングしたいんです

1日1回。だって新着がわからないんですもん。「新しい順」でソートすると紙版の出版年月でソートしよるし。
ウェブAPIないし、だったら毎日クローリングして差分を取るしかないじゃないですか。。

mechanizeを使うよ

gem install mechanize

これでおk。

ざっくりした使い方はたぶんこんな感じ。

require 'mechanize'

begin
  agent = Mechanize.new
  agent.user_agent = 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.66 Safari/537.36'

  url = 'http://rakuten.kobobooks.com/search/search.html?q=&t=all&f=keyword&s=publicationdatedesc&g=both&c=&l=ja&p='
  agent.get("#{url}1")

  total_count = agent.page.at('dl.SCSearch span.SCNumResTotalCount').inner_text.strip.to_i
  total_page = (total_count / 10) + 1

  (1..total_page).each do |i|
    agent.get("#{url}#{i}")
    # 欲しい情報getだぜ!
  end
ensure
  agent.shutdown unless agent.nil?
end

参考

RubyのMechanizeを解説 for 1.0.0 - きたももんががきたん。