RakutenWebService
rakuten_web_serviceは、 Rubyから楽天が提供しているAPIに簡単にアクセスできるSDK(Software Development Kit)です。
English version is here.
インストール方法
bundlerを利用したアプリケーションの場合、Gemfileに以下の1行を追加します。
gem 'rakuten_web_service'
そしてbundle
コマンドでインストール。
$ bundle
もしくは、gem
コマンドにより
$ gem install rakuten_web_service
とすることでインストールできます。
現在rakuten_web_serviceは下記のAPIをサポートしています。
楽天市場API
- Rakuten Ichiba Item Search API
- Rakuten Ichiba Genre Search API
- Rakuten Ichiba Ranking API
- Rakuten Product API
楽天ブックス系API
- Rakuten Books Total Search API
- Rakuten Books Book Search API
- Rakuten Books CD Search API
- Rakuten Books DVD/Blu-ray Search API
- Rakuten Books ForeignBook Search API
- Rakuten Books Magazine Search API
- Rakuten Books Game Search API
- Rakuten Books Software Search API
- Rakuten Books Genre Search API
楽天Kobo系API
使用方法
設定
RakutenWebService.configuration
メソッドを使い、Application IDとAffiliate ID(オプション)を指定することができます。
RakutenWebService.configuration do |c|
c.application_id = YOUR_APPLICATION_ID
c.affiliate_id = YOUR_AFFILIATE_ID
end
市場商品の検索
items = RakutenWebService::Ichiba::Item.search(:keyword => 'Ruby') # This returns Enamerable object
items.first(10).each do |item|
puts "#{item['itemName']}, #{item.price} yen" # You can refer to values as well as Hash.
end
ジャンル
Genreクラスは、children
やparent
といったジャンル階層を辿るインターフェースを持っています。
root = RakutenWebService::Ichiba::Genre.root # root genre
# children returns sub genres
root.children.each do |child|
puts "[#{child.id}] #{child.name}"
end
# Use genre id to fetch genre object
RakutenWebService::Ichiba::Genre[100316].name # => "水・ソフトドリンク"
市場商品ランキング
RakutenWebService::Ichiba::Item.ranking(:age => 30, :sex => 0) # 30代男性 のランキングTOP 30
RakutenWebService::Ichiba::Genre[100316].ranking # "水・ソフトドリンク" ジャンルのTOP 30
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request