Amazon Web サービスで、HTML+XSLだけ使って「amazon_Jazz」を作ってみた!

お気に入りの音楽を購入する際、かつてはiTunesで購入することが多かったのですが、最近はAmazonの利用が多くなっています。理由は単純で、そのアルバムに参加しているミュージシャン全員のクレジットが欲しいから。iTunesだと分からない場合が結構多くて、後ほどAmazonで確認することもしばしば。。。

と言う訳で、寺島さんのようにアルバムジャケにこだわるつもりはさほどないのですが、最近は伝統路線回帰で、CD購入というパターンが多くなりました。

しかし、どうもデフォルトのAmazonの使い勝手は個人的にはイマイチで、もうちょっと便利にカスタマイズできんものかなぁ、と思っていました。

例えば、アーティスト名検索。
アルファベットでもカナ検索でもヒットしますが、ちょっと綴りを間違えるとno_hit。
Michel Petrucciani」を、「Michel Petruciani」で検索するとno_hit。
また、「ミシェル・ペトルチアーニ」を「ミッシェル・ペトルチアーニ」で検索するとこれもno_hit。
あいまい検索させてくれないと言うか、表記のブレに厳しいのです、Amazonは。
それに「サラ・ボーン」なのか「サラ・ヴォーン」なのかも悩ましい。(正解はどちらでもOK。でも、検索時はちょっと考えてしまうし、そもそも中黒(・)は必要なのでしょうか。などなど)

それと、通常のキーワード検索だと、新しいもの順には出てこなくてデフォルトは人気順(?)なのかソートの基準がイマイチよく分からない。。。

普段、良く使うサービスなので、この際、公式APIであるところの「Amazon Web サービス」を使って、バリバリのカスタマイズ版を作ってまえ!とばかりに意気込んで作ってみました。独自に味付けして。

amazon_Jazz


内容について
「新譜」 「Artist別」 「Horn」「Voca」「Latin系」の5種類から構成されています。

1. 「新譜」
BrowseNodeIDの”モダンジャズ”で検索し、新しいものから順に並べた内容となっています。
2. 「Artist別」
アーティスト名は”Artist”ではなく”Keywords”によるプルダウンメニュー検索です。従って、そのアーティスト名の作品だけではなく、他のアーティストのアルバムへの参加作品なども含まれます。
そのアーティストに直接あるいは間接的に関係ある全ての作品が列挙されている、と考えると違和感がないかもしれません。
また、アルファベット/カナ名称のどちらでもいけるように両方用意しました。
なお、キーワード検索のため、まれに同名で異なるアーティストやアルバムタイトル、といったものも一緒に検索されてしまい、一見したところゴミ混入、と見えることも。(例:One For All)
3. 「Horn、Vocal、Latin系」
「Horn」はBrowseNodeIDの”トランペット”、”トロンボーン、”サックス”の3種類を足し合わせた結果を新しいものから順に表示します。「Vocal」「Latin系」は 1種類のBrowseNodeID検索です。

今回、作成していて、大変だったのは、Amazonから返されるXMLファイルを向こうで用意しているXSLTプロセッサを通して受け取る部分でしょうか。
こちらでXSLのスタイルシートをかなりバリバリに書き込んで受信するようにしたのですが、初めての経験ゆえ何度も往生しましたわ。

でも、苦労の甲斐あって、自分でも普段使いのカスタマイズAmazonが出来上がってちょっと嬉しいし、「関連商品」に思わぬ発見があったりしてなかなか面白い。

なお、後でお叱りを受けるのもいやなので明言しておきますが、このサービスでは接続に際して、私のAmazonアソシエイツIDもセットしてAmazonにアクセスしております。このサービス経由で商品を購入された場合、Amazonから当方に販売手数料が支払われます(ほんの微々たるものですが)。どうもこうしたことがお気に召さない方もいらっしゃるようなのですが、苦労してカスタマイズ版を作ったのですから、これくらいのアルバイトは構わんだろう、というのが当方の見解。

よろしければ是非「amazon_Jazz」経由でCDを購入してくだされ。