特集
» 2005年01月19日 16時15分 公開

WebサービスをAmazonで知る(前編)――ECS 4.0でアフィリエイト (4/5)

[金子 順,ITmedia]

 3番目は、検索したい商品の種類を指定します。Blendedを指定すると、すべての商品から検索されますが、1種類あたりの商品数が少なくなってしまうため、詳細検索の際には商品種別を指定する必要があります。指定できる商品種類は、Amazonの国ごとに異なるのですが、日本では下記の種類が指定できるようです。最近、日本でも取り扱いを始めた、おもちゃ&ホビーもあります。

&SearchIndex : 商品の種類
&SearchIndex= Blended (すべての商品)
Books (和書)
Music (音楽)
MusicTracks (曲名から調べる)
Classical (クラシック音楽)
Video (DVD&VHS)
DVD (DVD)
VHS (VHS)
VideoGames (ゲーム)
Electronics (家電 エレクトロニクス)
Kitchen (ホーム&キッチン)
Toys (おもちゃ&ホビー)
Software (PC ソフトウェア)

 4番目は、取得するページ指定です。キーワード検索を実行すると、指定したキーワードにマッチする商品が複数、検索結果として取得できます。

 1リクエストにつき10商品が検索結果として返ってきますので、ページ送りのように「Page=」を指定することで、すべての検索結果を表示することが可能です。ただし、特定ページを指定する必要がない場合でも、「Page=1」と指定しておく必要があります。

Page : 取得する検索結果のページ指定
&Page= 1 (1〜検索結果の数に応じて任意の数字)

 ここまでは、ほとんどのRESTリクエストに共通の項目です。次に、検索キーとなる値を指定します。こちらはOperationパラメータの種類によって、指定するものが変わります。ひとまず最もよく使いそうなものを紹介しましょう。

 「Operation=ItemSearch」を指定した場合は、キーワードによる検索か、「BrowseNode」指定による、ベストセラー商品の検索をよく利用するでしょう。「&Keywords=」、あるいは「&BrowseNode」のどちらかを指定して検索します。

Operation=ItemSearchの場合の検索キー
&Keywords= 検索したいキーワード
&BrowseNode= BrowseNode番号 (Amazonのカテゴリごとのベストセラーを取得)

 最後に、検索結果をどのようなフォーマットで取得したいかを指定します。主には、2種類のフォーマットが想定できるでしょう。PerlやPHPなどスクリプトで処理するためにXMLデータで取得したい場合と、ブラウザでそのまま表示するためにHTMLとして出力したい場合です。

ContentType : 出力するフォーマット
&ContentType= text/xml (結果をXMLで取得したい場合) 
text/html (結果をHTMLで取得したい場合)

 ところでHTMLとして出力する場合に、どのような方法で商品情報のXMLをHTMLに変換するのでしょうか? これを実現するのがAmazonのXSLT機能です。XSLTは、XMLを別のフォーマットに変換するスタイルシートの役割を果たします。

 作成したXSLTファイルを、自分のサーバなどにアップロードして、そのURLをECS 4.0のRESTパラメータとして指定することができます。ECS 4.0のサーバは、URLで指定されたXSLTを読み込み、商品情報XMLを自動的にHTMLに変換して出力することも可能です。

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ