AAA(Amazon Associate Assistants)はAmazon個別商品紹介ページへのリンクを貼るのを支援するプログラムです。
Amazonアソシエイトプログラムと併用することを前提としています。
AAAを使うことで、以下のような商品紹介HTMLなどを簡単に作ることができるようになります。
『蒼穹の昴(1)』
- 作者: 浅田 次郎
- 出版社・メーカー: 講談社
- 発売日: 2004/10/15
- メディア: 文庫
- 価格: ¥ 620(定価: ¥ 620)
- 評価: 5(全2件)
使い方のウォークスルー
- bookmarkletの登録(最初だけ)
- amazon.co.jpの個別商品画面の表示(検索などで)
- bookmarkletを選択
- 表示されたAAAの画面で表示されているHTMLをコピーする。オプション変更などをして表示内容を変えることも可。
- 自サイトのコンテンツに書き込む。
bookmarkletの登録登録
AAAのbookmarkletを普段使っているブラウザに登録します。これは最初だけの作業となります。
AAAにアクセスします。そうするとAmazon Assosiation ID Registrationということで、アソシエイトプログラムIDの入力をし、registボタンを押下します(初期表示はhsjjp-22になっています)。
そうするとまた同じ画面が表示されますが、中央部のアソシエイトIDは先ほど入力されたものに変わっているはずです。
そこでタイトル直下にある"bookmarklet for AAA is here."のリンクAAA(plain)をそのまま「お気に入り」や「ブックマーク」に登録します。
IEの場合「リンク」、FirefoxやOperaなどの場合は「ブックマークツールバー」に登録すると便利です。
amazon.co.jpの個別商品画面上でbookmarkletを実行する
サイトで紹介したい商品をamazon.co.jp上で検索し、商品紹介ページを表示します。
ここで先ほど「リンク」や「ブックマークツールバー」に登録したAAAへのbookmarkletを選択します。
そうするとAAAに商品情報が引き渡され、AAAの画面が表示されます。
大きく分けて左右で機能が分かれています。
左側はAAA商品紹介HTMLのサンプル表示とそのHTML・JavaScriptリンクのコードを表示します。
右側はAAAの実行オプションと拙作mt-sukeroku-plus用の商品紹介用の書法を表示します。
このままでも良いのなら中央部のHTMLをコピーし、自サイトに貼り付ける形になります。HTMLやJavaScriptを使う場合でブラウザがIEの場合Copy (IE Only)をクリックするとクリップボードにコピーされます。
(mt-sukeroku-plusをお使いの向きは右側からどうぞ)
標準の表示内容からの変更
標準状態で提供されない機能を取り込むオプションをいくつか用意しております(すべて同時に選択可能です)。
- BookTitle Quoting
- 書籍の題名に『』(輸入版の場合は"")で囲むようにします。書籍意外には適用されません。
- Show Tracks Info
- CDの曲目リストやDVDの監督・出演者リストを表示します。
- Show Price
- 価格情報(定価ならびにAmazon.co.jpでの売価)を表示します。
- Show Adding Cart Form
- Amazon.co.jpへの購入用ボタンを表示します。
- Disable Showing Reviews
- 「レビュアーの評価」を表示しなくします。
- JavaScript Char Encoding
- Dynamic JavaScript Linkで出力される文字コードをUTF-8(標準)、Shift-JIS、JIS、EUC-JPの4つから選択できます。
- Output Format
- 出力するHTMLの詳細度を指定できます(商品名のみのリンク、画像のみのリンク、画像+商品名のリンク、詳細情報付きリンク)
- Disable Showing Title
- 商品詳細情報の見出し(「出版社・メーカー」など)を表示しないようになります。
- For Sub(Side) Panel
- チェックするとベースになるdiv要素のクラスをasin-detailからasin-detail-subに切り替えます。
- Output Items (ListManiaモードのみ)
- LiveAssociateの出力商品件数を1~3件の間で指定します。サンプルは1件のみ表示されます。
- Random Listing (ListManiaモードのみ)
- ListManiaモードでリストからランダムで商品を表示するモード。
AAAをリアルタイムに利用するためのJavaScript動的生成に対応しています。
AAAで生成されるJavaScriptを呼び出すHTMLコードを貼り付けると、リクエストがある度にAAAをリアルタイムに呼び出すわけですが、サンプルページを見ていただくのが早いかもしれません。
この機能をAAA LiveAssociateといいます。
AAA LiveAssociate 外部利用対策
基本的にAAA LiveAssociateは各自のサーバにaaa.cgiを置いて頂いて動作させることをタテマエとして作っていますが、実際には外部サービス的に提供できるようになっています。
しかし、大量のAAA LiveAssociateが呼び出されると提供側サーバへの影響負荷が高くなり、場合によっては転送量制限にひっかかる要因となりかねません。
そこで自分のサーバにAAAを設置することを促進するため、AAA LiveAssociateで呼び出されたときにのみ、リアルタイムかつ一定の確率でデフォルトのアソシエイトID (このサーバ上のAAAの場合、hsjjp-22) に上書きする機能を搭載してます。
実際、このサーバでの設定は現在5%に設定しております。(今後変動させる可能性があります)
もちろん、AAA LiveAssociateを自分でしか使わないという向きには外部からのAAA LiveAssociateの使用を拒否できるようになっています。
また、ここでいう「外部」も標準ではaaa.cgiを動かしているサーバホスト(このサーバ上ではhsj.jp)のみとなりますが、複数のサーバで掛け持ち運営している場合すべてを「内部」として扱うようにすることも設定することで可能となります。
AAA LiveAssociate ListManiaモード
これまでご説明してきた内容は単品の商品について紹介するものでしたが、複数商品を一気に紹介したいとか、いくつかの候補からランダムに紹介したいといったニーズを考え、ListManiaモードというものを用意しています。
これはAmazon.co.jp リストマニア機能を利用して、登録されている商品の情報を検索します。
実際に動きを見てみます。
まずはサンプルとして作りましたリストですが、ここでbookmarkletを実行するとこのような形で表示されます。(デフォルトではランダム表示は無効ですが、ここでは有効としています)
ランダム表示(Random Listing)を有効にしている状態で"reload"ボタンを押すと、候補から順次ランダムに読み出しているのが分かると思われます。
しかし、ちょっと問題点があります。
マイリスト自体は即時更新されるのですが、AAAで用いているAmazon Web Servicesで検索をしても見つからなかったり、古い情報が返って来たりするようです。
状況を考えるに、一定時間経過するか、毎日同じ時間に同期化しているのだと思われます。
以上の内容を念頭においてご利用頂ければと思われます。
尚、ここで表示されているHTMLサンプルはリスト中からピックアップされた商品のみのものになります。
詳細モード(DetailもしくはBox)で利用されるCSSについて見ていきます。
上記に挙げている例を分解していきます。
<div class="asin-detail">
<a href="amazon商品ページ">
<img src="書影画像" (他の属性は略) />
</a>
<p>
<a href="amazon商品ページ">商品名(本の題名)</a>
</p>
<ul>
<li>作者やら価格などの情報をそれぞれ個別にリストとする。</li>
</ul>
<div class="asin-detail-aaa">
(LiveAssociateの際、メッセージが入る)
</div>
</div>
商品紹介のブロックとしてdiv.asin-detail
があります。
すべての要素はこれに含まれるカタチになります。(サブパネルモードの場合はdiv.asin-detail-sub
になります)
以降の要素については上記のとおりになります。
設定例
HSJ.jp内で利用しているスタイルシートをご紹介しますので、ご参考になさってください。
div.asin-detail {
margin: 10px;
padding: 10px;
border: solid 1px #000000;
background-color: #ffe;
line-height: 125%;
}
div.asin-detail p {
margin: 0px;
}
div.asin-detail p a{
font-weight: bold;
}
div.asin-detail ul {
list-style-type: none;
margin: 5px 0 0 0;
padding: 0;
}
div.asin-detail img {
float: left;
border: solid 1px #000;
margin: 0 10px 0 0 ;
}
div.asin-detail-aaa{
border-top: dotted 1px #000;
margin-top: 2px;
}
aaa.cgi本体の動作についてですが、以下の環境が必要になります。
CGI動作サーバ環境
- Perl 5以上
- モジュール
- CGI
- JCode
- XML::Simple
- LWP::UserAgent
Amazon関連で必要となるもの
詳細はAmazon.co.jp アソシエイト・プログラムならびにAmazon Web Servicesをご覧ください。
パラメータの設定
最低限、動作させるのに必要なのは、aws_token(Amazon Web Servicesのデベロッパー・トークン)とdefault_aid(標準のAmazonアソシエイトID)の設定だけです。
AAA LiveAssociateの外部利用についての設定も事前に仕掛けておくべきでしょう。
提供スクリプトの利用・改造について
ベースとしているaws.plに倣い、個人かつ非営利での利用(Amazon アソシエイトは可)の場合に限り、プログラムの一部もしくは全部を自由に利用・改造していただいて構いません。
ただし、オリジナルのCopyrightは削除しないようにお願いいたします。
AAAの利用に際しての注意
AAAを使用された場合、以下の内容を承諾して頂いたものと見なします。
- AAA(Amazon Associate Assistants)プログラムの利用に際し、如何なる利益・損害が発生しても、プログラム作者ならびにサーバ提供者は一切の責任を負いません。
- 回線やサーバなどの障害によってサービスの遅滞・中断などが発生する場合があります。
- 利用者の確認なくサービス内容を変更する場合があります。
- 将来にわたりAAAの一切のサービスを提供することを保証しません。
Amazon商品検索ボックス
AAA Bookmarkletの登録について
AAA LiveAssociate Button
てきとーなボタンですが…(^^;
検索履歴や個人情報の取り扱いについて
AAAの利用に際して、検索履歴の保存・蓄積は一切行っていません。
また、AAAを経由した商品購入をした場合も個人情報はAmazon.co.jpにてやり取りしていただくので、安心してご利用いただけます。
AAAについての問い合わせについて
AAAについてのお問い合わせについては当エントリーへのコメントまたはdonadona @ gmail.comにお願いいたします。
なお、商品の個別情報のについてはすべてAmazon.co.jpが提供しているAmazon Web Servicesにより取得しておりますので、その点をご了承ください。
AAAについて
AAAは aws.pl (Daiji Hirataさん作)をベースに開発しています。
広告