BOOKLOGの本棚にある本のISBNを取得するRubyスクリプト

BOOKLOGの本棚にある本のISBNを取得するRubyスクリプト。

#!ruby -Ke
require 'open-uri'

#アカウント(本棚のURLが「http://booklog.jp/users/sample」なら「sample」)
ACCOUNT = 'sample'
#ページ数
PAGE = 2
#出力ファイル名
FILENAME = 'isbn.txt'

result = [] #重複を避けるための履歴
open(FILENAME, 'w') do |file|
  PAGE.times {|page|
    url = "http://booklog.jp/users/#{ACCOUNT}/spine/dm=&jm=&cate=&page=#{page}"
    open(url) {|f|
      html = f.read
      while token = html.slice(/\/asin\/(\w+)/, 1)
        if not result.include?(token)
          result << token
          file.puts token 
        end
        html = $'
      end
    }
  }
end

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください