るびー めも

Ruby の学習メモを記す

Amazon ECS を使う

現在、鋭意作成中のWEB アプリで Amazon からDVDパッケージの画像を
Rails で取得したいので、amazon-ecs というgem を使ってみた。

https://github.com/jugend/amazon-ecs

色々とWEB に公開されている情報を参照しながら、コピペで
サンプルを動かそうとしてみたけど全然動かなくて(情報が古くて)
最終的には、github の EXAMPLE 参照しながら実装したらあっけなく動いたので
自戒の意味も込めてメモを記す。
#要するに、WEB の情報はあくまでも参考情報なので
#まずは、オフィシャルなドキュメントから参照しましょうということ

拙作の amazon.rb からソースを抜粋します。
#associate_tag/AWS_access_key_id/AWS_secret_key は、取得した自分のコードを入力すること

require 'amazon/ecs'
Amazon::Ecs.options = {
  :associate_tag => '[your associate tag]',
  :AWS_access_key_id => '[your developer token]',       
  :AWS_secret_key => '[your secret access key]'
}

res = Amazon::Ecs.item_lookup(ARGV[0], :res_group => 'Small' )
if(res.items.length > 0)
  res.items.each do |item|
    puts("asin: #{item.get('ASIN')}")
    puts("title: #{item.get('ItemAttributes/Title')}")
  end
else
  puts("#{ARGV[0]}: products not found")
end

上記のようなコードで、Amazon から情報を引っ張ってこれた

Macbook Air OSX 10.8.4 環境での実行結果は、以下のとおりです。

$ uname -a 
Darwin lion.local 12.4.0 Darwin Kernel Version 12.4.0: Wed May  1 17:57:12 PDT 2013; root:xnu-2050.24.15~1/RELEASE_X86_64 x86_64
$ ruby -v
ruby 2.0.0p195 (2013-05-14 revision 40734) [x86_64-darwin12.3.0]
$ gem list | grep amazon
amazon-ecs (2.2.4)
$ ruby ./amazon.rb 4873113679
asin: 4873113679
title: 初めてのRuby

VirtualBox ゲストの debian 環境での実行結果は、以下のとおりです。

$ uname -a
Linux debian-squeeze 2.6.32-5-amd64 #1 SMP Fri Feb 15 15:39:52 UTC 2013 x86_64 GNU/Linux
$ ruby -v
ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-linux]
$ gem list | grep amazon
amazon-ecs (2.2.4)
$ ruby ./amazon.rb 4873113679
asin: 4873113679
title: 初めてのRuby
$ 

ASIN とは、 Amazon Standard Identification Number の略称で、
Amazonグループが取り扱う、書籍以外の商品を識別する10けたの番号です。
CD、DVD、ビデオ、ソフトウェア、ゲームなど、書籍以外の商品の詳細ページに記載されています。

とのこと、詳細は以下を参照願います。
http://www.amazon.co.jp/gp/help/customer/display.html?ie=UTF8&nodeId=747416

というわけで、次回は Rails に組み込みたいと思います。
#次回がいつになるかは不明ですが、、、