▼ 2009/06/26(金) rubyでamazonから書籍検索
2009/06/26 16:44 【研究課題】
ISBNではなくて、作者やタイトルから書籍を得るときのサンプルコードも書いておく。
よくわからんのは、req.search( is, rg , 3) と書くと、1から3ページ目まで送ってくること。
2〜5ページ目だけよこせというような使い方ができない。なんでじゃ。使いにくい仕様だ。
よくわからんのは、req.search( is, rg , 3) と書くと、1から3ページ目まで送ってくること。
2〜5ページ目だけよこせというような使い方ができない。なんでじゃ。使いにくい仕様だ。
■ サンプルコード
require 'amazon/aws' require 'amazon/aws/search' # is = Amazon::AWS::ItemSearch.new( 'Books', { 'Title' => '死して咲く花' } ) # タイトルで探す is = Amazon::AWS::ItemSearch.new( 'Books', { 'Author' => '神林長平' } ) # 作者で探す # is = Amazon::AWS::ItemSearch.new( 'Books', { 'Author' => '神林' , 'Title' => '死して咲く花' } ) # 複数の条件 rg = Amazon::AWS::ResponseGroup.new( 'Large' ) # page = req.search( is, rg , :ALL_PAGES) # 全件数取得。多いと時間がかかる。 page = req.search( is, rg ) # 件数が多い場合は、ページに分けて取得 # puts '===================page Analysis (ItemSearch)' # puts page.inspect puts '===================ItemSearch response' # puts page print "発見数 " , page.item_search_response.items.total_results,"\n","\n" puts page.item_search_response.items.item.each { |i| print " title = ",i.item_attributes.title,"\n" print " publisher = ",i.item_attributes.publisher ,"\n" print " author= ",i.item_attributes.author,"\n" puts } print "Page数 " , page.item_search_response.items.total_pages,"\n" total_page = page.item_search_response.items.total_pages.to_i if total_page > 1 then # 次ページ以降を読み込み page = req.search( is, rg , total_page) # 1〜指定ページまで読み込み page.each { |p| print ">>>>>> \n" p.item_search_response.items.item.each { |i| print " title = ",i.item_attributes.title,"\n" print " publisher = ",i.item_attributes.publisher ,"\n" print " author= ",i.item_attributes.author,"\n" puts } print "<<<<< \n" } end
- TB-URL http://snjx.info/diary/adiary.cgi/snjx/035/tb/