ZAPAnet総合情報局 > [Z]ZAPAブロ〜グ2.0 > プログラミングTIPS > ビッダーズWebサービス(BWS)利用メモ

ビッダーズWebサービス(BWS)利用メモ

このエントリーをはてなブックマークに追加
2005年02月14日 カテゴリ:プログラミングTIPS
お気に入りがきっと見つかる!ビッダーズでお買い物

オークション&ショッピングの総合オンラインマーケットbiddersには、ビッダーズWebサービス(bws)というWEBサービスがあります。
(詳しくはビッダーズ Webサービスのブログ参照)

ビッダーズ会員が開発キットをダウンロードすることで、bwsが利用できるようになります。

以下、ビッダーズWebサービスに関するメモ。
(個人的なメモなので、内容の保証はありません)

ビッダーズ Webサービスのページから開発キットをダウンロードする


・ダウンロードしたファイルを解凍する
中には以下のものが含まれている(2005年02月時)

 ・bws全体の説明書(kit.説明書.txtとbidders_web_service.xls)
 ・DTDとその説明書
 ・XML ドキュメントのサンプル(「XML形式」と「RSS形式」)
 ・XSLTスタイルシートのサンプル

マイクロソフトエクセルか、その互換のリーダーがないと説明書さえ読めないので注意が必要。
エクセルファイルではなく、テキストファイルかHTMLファイルで配布してくれた方が、利用者にとっては良いと思う。(エクセルを生かした機能などは使われていない。HTMLのテーブルタグで十分な内容)


・説明書を読む
テキストファイルには、ファイルの説明と注意事項。
エクセルファイルには、開発キット、提供環境、XML・RSSの仕様、パラメータの説明などが載っている。


・XMLファイルをブラウザなどで開いてみる
XMLがわかる人なら、単純な作りなのですぐに理解できるし、XMLがわからない人には全然わからない。


・商品情報の要素解説を見る
dtdの説明書を開き、要素解説を読む。
読まなくてもXMLのみで理解できるわかりやすい内容。


・RESTでXMLを取得するためのパラメーターを確認する
通信は全てHTTPを使用。
URLはhttp://xml.bidders.co.jp/bep/xml。
MethodはGET。
Parameterは、エクセルファイルに書かれている内容を良く読む。
最低限、tf=[DeNAで準備したXML用テンプレート]は必要。
現在(2005年2月)の最新バージョンはxml_lite4。


・keyword検索でXMLを取得する
パラメーターにkeywordを追加する。
ビッダーズの場合、文字コードがSJISなので注意する。
仮にEUC?JPで保存されたPHPファイルでパラメーターを渡す場合、
 urlencode(mb_convert_encoding("キーワード", "SJIS", "EUC-JP")
などとして文字コードを変換した後、URLエンコードする。

例:全カテゴリから”ドラクエ”でXMLを取得する場合
http://xml.bidders.co.jp/bep/xml?tf=xml_lite4&keyword=%A5%C9%A5%E9%A5%AF%A5%A8
他のパラメータなどを理解していなくても、これだけでXMLを取得できる。


・categ_id検索でXMLを取得する(パラメータ「カテゴリID」の注意)
エクセルファイルの、

[検索条件]:カテゴリIDのところには、以下の説明文が書かれている。
 指定されたカテゴリに出品されている商品を表示する。
 指定がない場合は、全カテゴリが検索対象となる。
 値:整数

パラメータでカテゴリ名のみを指定した場合、そのカテゴリのXMLの取得が出来そうな書かれ方をしているが、実際には第一カテゴリと第二カテゴリの取得は出来ない。
説明書には書かれて無く、ブログの方に「変更した」と書かれているのみ。

 今回のリニュアールで検索ロジックが多少変更となりました。カテゴリが第一階層と第二階層のカテゴリに関しましては、カテゴリ指定のみで検索ができないようになりました。第3階層以降に関しましては、カテゴリIDのみの指定は可能となります。

全カテゴリから取得できた方が便利だと思う。(負荷対策?)
キーワード無しでカテゴリ検索をしたい場合は、第三階層以下から。

例:「TV・PCゲーム」カテゴリからキーワード無しでXML取得
http://xml.bidders.co.jp/bep/xml?tf=xml_lite4&categ_id=216


・その他のパラメータを試す
エクセルファイルに書かれているパラメーターを自分の好きなように追加し、試してみる。


・取得したXMLファイルをXSLを用いて変換する
xslパラメータを追加して、XSLTモードでXMLをHTMLに変換する。
これで誰にでも見やすい形にデータを変換できる。
(XSLTスタイルシートに関するこの記事での説明は無し)


・取得したXMLファイルをパースする
XSLTスタイルシートを使いたくない場合には、自分でXMLファイルをパースする。
SAXやDOMなどの技術を使い変換してHTMLファイルなどにする。
(パースに関するこの記事での説明は無し)


・自分のアフィリエイトIDを確認する
[Q.自分のアフィリエイトIDを確認できますか。] ビッダーズ アフィリエイト ブログ
を参照して、自分のアフィリイエイトIDとリンクIDを確認する。


・アフィリエイト商品リンクURLを確認する
[Q.アフィリエイト商品リンクURLについて教えてください] ビッダーズ アフィリエイト ブログ
を参照して、

http://www.bidders.co.jp/pitem/商品ロットナンバー/aff/暗号化されたアフィリエイトID/リンクID/IT
・aff・ITは固定。
・商品ロットナンバー

の仕組みを理解する。
先に確認した自分のアフィリエイトIDとリンクIDとXMLの商品ロットナンバーを組み合わせて、XMLを変換すれば、売り上げがあった場合に報酬がもらえる。


・RSSを取得して表示する
ビッダーズではXMLだけではなくRSSの配信もあるので、RSSを取得することで、難しいXML変換の技術を使うことなく、簡単に情報を表示できる。

例:RSS2.0で、PS2というキーワードで10件取得する場合
http://xml.bidders.co.jp/bep/xml?tf=rss2_lite&keyword=PS2&ipp=10

後は、これをRSSリーダーなりブログのサイドバーなどを使い表示する。


・ちょっと気になったこと
要素「TotalPage」の数値が1000を超えた場合、
ページ数にカンマが挿入されている。
処理方法によっては、カンマを取り除く作業が必要。



・まとめ
 ・アマゾンのAWSに続いて、ビッダーズのBWS。語呂が良くて、ライバルのように感じられるところが良い。
 ・XMLの要素の作りがわかりやすくて良い。
 ・レスポンスも悪くない。
 ・第一、第二階層のカテゴリ検索が出来なくなってしまっていたのは残念。
 ・パラメーターに自分のアフィリエイトIDを追加して、自動的にアフィリエイト用のURLが取得できた方が良い。(現在はロットナンバーと商品画像URLしか取得できないので、自分で設定する必要がある)

商品リンクの作成やXML、RSSの配信はとても便利。
あとは楽天、アマゾンに追いつき追い越せで頑張ってもらいたいところです。


試しにアマゾン検索、楽天検索、ビッダーズ検索を組み合わせて作ってみたページ

[Z]ZAPAnetサーチ