2016年3月26日土曜日

[Ruby] AmazonのASINからJANコードを取得したい

以前クラウドワークスの募集中の仕事をなんとなく眺めていた時に、
ASINからJANコードを取得するツール作成
の依頼があったと記憶しています。
クラウドワークスは手頃な練習課題を探すのにいいですね。
Rubyで試しにやってみました。

準備


gem install amazon-ecs

この記事執筆時点ではamazon-ecs-2.4.0を使用しています。

コード


ASINから商品情報を取得するAPIはItemLookupです。
gemを使えばとても簡単。
Amazon内ではJANコードのことはEANと呼ばれているようです。
Ecs.item_lookupの第一引数がASINです。


# -*- coding: utf-8 -*-
require 'amazon/ecs'

Amazon::Ecs.options = {
    :associate_tag => 'YOUR_ASSOCIATE_TAG',
    :AWS_access_key_id => 'YOUR_ACCESS_KEY_ID',
    :AWS_secret_key => 'YOUR_SECRET_KEY',
}


res = Amazon::Ecs.item_lookup(
    'B015J4FFRE', :response_group => 'ItemAttributes', :country => 'jp'
)

res.items.each do |item|
  puts item.get('ItemAttributes/Title')
  puts item.get('ASIN')
  puts item.get('ItemAttributes/EAN')
end

実行結果


たまたま目に付いた
を例に実行してみました。
グッドモーニングアメリカ【初回限定盤】
B015J4FFRE
4988001781868
実際のAmazonのページはこちら。
確かに情報が得られているのがわかります。


おわりに


クラウドワークス見てるとExcel VBAでツール作る仕事がよく目に付きます。
今回のネタもユーザー的にはExcelで動くのが便利なんでしょうね。
Rubyコードで納品なんかされようものなら、WindowsだったらRubyのインストールから必要になりますしね。
というわけで、今度VBA化してみようかな。

0 件のコメント:

コメントを投稿