amazon-ecs を使って Amazon から関連商品情報を取得するサンプル

公開日: : 最終更新日:2014/01/26 Ruby ,

次のサンプルスクリプトを書いたが、これに続くもの。

今回は関連商品の ASIN を取得するサンプルスクリプトを書いたのでメモしておく。

ResponseGroup は Similarities を指定。スクリプトはこんな感じ。Gist にも登録済み。

# encoding: utf-8
 
require 'amazon/ecs'
require 'yaml'
require 'nokogiri'
 
class PaapiSimilaritiesSample
  def initialize
    @config = YAML.load_file('./paapi-similarities-sample.yaml')
 
    Amazon::Ecs.options = {
      :associate_tag => @config['associate_tag'],
      :AWS_access_key_id => @config['AWS_access_key_id'],
      :AWS_secret_key => @config['AWS_secret_key']
    }
  end
 
  def search asin
    res = Amazon::Ecs.item_lookup(asin, :response_group => "Similarities", :country => 'jp')
    res.items.each do |item|
      Nokogiri::XML(item.to_s).xpath('/Item/SimilarProducts/SimilarProduct/ASIN').each do |node|
        p node.inner_text
      end
    end
  end
 
end
 
if __FILE__ == $0
  obj = PaapiSimilaritiesSample.new
  asin = "4894712288"
  asin = ARGV[0] unless ARGV[0] == nil
  obj.search(asin).each do |x|
    p x
  end
end
associate_tag: XXX
AWS_access_key_id: YYY
AWS_secret_key: ZZZ

前回の SalesRank と同様 Nokogiri を使わないと ASIN が取得できなかった。

API を使用するには Amazon でキーなどを発行してもらう必要がある。それらの項目はスクリプトに直接書くのではなく YAML に切り出している。

このスクリプトを実行すると、関連商品の ASIN が5件取得できる。

Googleアドセンス用(PC)

  • このエントリーをはてなブックマークに追加
  • follow us in feedly

関連記事

no image

配列の内容をファイルに書き込む

Ruby で書いたスクリプトを module 化していく試みの一貫です。 Array に保持してい

記事を読む

icatch_12845006573-resized

CentOSのバージョン6.5(64ビット)にamazon-ecsをインストールする

Amazon の Product Advertising API を使う作業があったので、Produ

記事を読む

icatch_100612765-resized

CentOSのバージョン6.5(64ビット)にRuby2.1.2をインストールする

2014/08/10 時点での最新安定版である Ruby 2.1.2 をインストールしてみたので、そ

記事を読む

icatch_474695210-resized

amazon-ecsを使った検索のエラー原因を確認する

Amazon が提供しているサービス Product Advertising API を手軽に扱える

記事を読む

no image

Redcarpet を使って Markdown をパースする

Ruby から Redcarpet を使って Markdown をパースしてみた。 せっかくなので

記事を読む

no image

ファイルを読み込んでその内容を保持する

Ruby で書いたスクリプトを module 化していく試みの一貫です。 ファイルを読み込んで、そ

記事を読む

icatch_4081722858-resized

CentOSにRubyのBundlerをインストールして使い始める人向けの簡単なまとめ

Bundler を使ってないと環境を移したときに面倒だってことが身に染みて分かったので Bundle

記事を読む

no image

プログラミングの「面倒くせー」を減らす試み

プライベートで書くコードや、ちょっとしたスクリプトなんかは Ruby で書くようにしていますが、どう

記事を読む

no image

amazon-ecs を使って Amazon から商品情報を取得するサンプル

次の仕事で使うことになるかもしれないので、どんなことができるのか調査したときに作成したスクリプト。

記事を読む

no image

with_index メソッド

with_index というメソッドを知ったのでメモ。どういうときに使うかのサンプルを載せておく。

記事を読む

Googleアドセンス用(PC)

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です


5 − = 零

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Googleアドセンス用(PC)

icatch-jersey_multi_pathparams
Jerseyの@PathParamはスラッシュの間に複数指定できる

http://hoge-api/user/{id}.{format}

icatch-vagrant_box_customize
VagrantのBoxファイルをカスタマイズして独自のBoxファイルを作成する

配布されている Vagrant の Box ファイルを使って検証環境を

icatch-2015-006-1
バリデーションチェックにJava8のOptionalを使ってスマートに書く(自分比)

Web アプリのバリデーションチェックにアノテーションを使うことが増え

icatch-2015-005-1
ユニットテストの偏りを防ぐ命名規則の付け方

ユニットテスト名に以下の命名規則を付けるようにして二ヶ月ぐらい経った。

icatch-2015-004-1
Vagrantで起動したCentOS上のOctopressをホストOSから確認する設定

タイトルの通りだが、Vagrant を使って起動した CentOS に

→もっと見る

PAGE TOP ↑