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