2009年1月6日火曜日

Amazon web サービス その1

これをつかったソフトを作ってみようかと。
とりあえず参考ページは。。。ここ

することは
Access Key ID の取得 ・・・ OK
Technical Documentation ・・・ 最新(2008-08-19)はここ
日本語の Discussion Forums ・・・ ここ

Amazon アソシエイトに登録 ・・・ OK

Amazon アソシエイト Webサービス で 商品情報を取得するには、REST か SOAP を使う。


まずは REST の使い方から

REST は「Representational State Transfer」の略。HTTP の GETメソッド でリクエストを送信すると、XML形式のデータを取得できる。Amazon で指定された URL にパラメータを指定したリクエストを送ると、商品情報などが含まれるXMLデータを取得することができる。

書式

http://(指定のURL)?(パラメータ名=値)&(パラメータ名=値)

指定のURL

日本 : http://ecs.amazonaws.jp/onca/xml
米国 : http://ecs.amazonaws.com/onca/xml

例えば、 こんな URL だと
http://ecs.amazonaws.jp/onca/xml?
Service=AWSECommerceService&
AWSAccessKeyId=1SM7CKHWKSJKJFPKBA02&
Operation=ItemSearch&
SearchIndex=Books&
Title=Harry%20Potter&
Version=2007-10-29

こんな XML ファイルが帰ってくる
*2009/08/15 から Signature が必要になった

取得した XML ファイルは XSLT を使って HTML に変換。
XSLT は XML Stylesheet Language Transformations の略で、XMLをHTMLやテキストフォーマットに変換してくれる。


ではでは、リクエストするパラメータにはどんなのがあるのかわからないと、リクエストできないわけで。

Amazon アソシエイト Webサービスで共通して利用されるパラメータ

・サービス名 (Service)
・Access Key ID (AWSAccessKeyId)
・APIバージョン (Version)
・アソシエイト ID (AssociateTag)
・オペレーション (Operation)
・コンテンツタイプ (ContentType)
・スタイル (Style)
・検証 (Validate)
・出品者 (MarchantId)

サービス名 (Service) * このパラメータは必須です
More...
書式

Service=(サービス名)

現在使用可能なサービス名は 「AWSECommerceService」 のみ。
なので、常に
Service=AWSECommerceService
をリクエストに付ける


Access Key ID (AWSAccessKeyId) * このパラメータは必須です
More...
書式

AWSAccessKeyId=(Access Key ID名)



APIバージョン (Version)
More...
書式

Version=(APIバージョン)

現在の最新APIバージョンは「2007-10-29」。
指定しなかった場合は自動的に最新のバージョンが設定される。
APIバージョンに関する情報はこちら


アソシエイト ID (AssociateTag)
More...
書式

AssociateTag=(アソシエイトID)

Amazonアソシエイト用のIDを指定する。


オペレーション (Operation) * このパラメータは必須です
More...
書式

Operation=(オペレーション種類)



パラメータ値実行内容
BrowseNodeLookupBrowseNodeの情報。ブラウズノードとは商品が分類されているグループの階層構造
CartAddカートに商品追加
CartClearカートをクリア
CartCreateカートを作成
CartGetカートを取得
CartModifyカート内の情報変更
CustomerContentLookup顧客をID検索
CustomerContentSearch顧客を検索
HelpHELPを表示
ItemLookupASINなどで商品を検索
ItemSearch商品名や著者名でキーワード検索
ListLookupリストマニア情報をID検索
ListSearchリストマニア情報を検索
SellerListingLookup特定の売り手の商品をID検索
SellerListingSearch特定の売り手の商品検索
SellerLookup売り手を検索
SimilarityLookup関連商品の検索
TagLookupUS only
TransactionLookupUS only



コンテンツタイプ (ContentType)
More...
書式

ContentType=(コンテンツタイプ)


デフォルトの値は「text/xml」コンテンツタイプが XML として返ってくる。
「text/html」 コンテンツタイプが HTML として返ってくる (ただしデータの中身はXML形式)。

「ContentType=text/html」を指定して、HTML形式でデータを取得した場合に HTML ページとして表示するには、XMLのデータをどのようにHTML形式に変換するのかを示す XSLファイルを別途指定してデータそのものをHTML形式に変換しなければならない。

XSLファイルの指定には「Style」プロパティを使用する。


スタイル (Style)
More...
書式

Style=(スタイル)

リクエストの結果取得できるデータのフォーマットを指定する
デフォルトの値は「XML」

コンテンツタイプに「text/html」を指定した場合、「Style」パラメータに XSL ファイルが置かれた URL を指定すると、Amazon 側で提供している XSLT サービスによって XML データを HTML に変換した結果を返してくれる。この結果はそのままHTMLページとして表示できる。

XSL ファイルには XML 形式のデータを別の形式に変換するための規則を記述する。

XSL ファイルの設置場所を表す URL が「http://www.example.com/xxxx.xsl」だった場合、次のように記述する。

Style=http://www.example.com/xxxx.xsl


検証 (Validate)
More...
書式

Validate=(True or False)

テストを行う。デフォルトの値は「False」。
「True」を指定した場合には実行までは行わずにテストだけ行う。


出品者 (MarchantId)
More...
書式

MerchantId=(出品者ID)

特定の出品者を指定して商品の検索等を行う。デフォルトの値は「Amazon」。
他に設定できる値は、全ての出品者を表す「All」か、または個別の出品者ID。

このパラメータは「Condition」パラメータと合わせて使用する。
「Condition」パラメータに中古を表す「Used」を指定した場合は、「MerchantId」パラメータも「Amazon」以外の値を指定する必要がある。



Form を使った検索例












0 件のコメント:

コメントを投稿