affiliate affiliate (May 16, 2004)

Amazonのaffiliate program(アソシエイトとアマゾンでは呼ぶ)
はとても面白い。なんていうかこれを利用してサイトを作ろうとすると
おもしろみが増してきてはまってしまう。

 アマゾンの画像取得については色々なページがあるんだけど、
javascriptでやってしまうのが当初一番簡単だと思われた。
手動でやるのならこれでもうまくいくのだが、

掲示板方式でwebに来る人たちが参加して自分のお薦めを
登録するページを作りたかったため、
・日本盤の場合
・輸入盤の場合
・画像データがない場合 → no-imageと表示させたい
・日本盤と輸入盤が両方ともある場合
と4つの場合があり、場合分けしてもなかなかうまくいかない。
さらに、画像をコピーしないでリンクすると、
amazonのサーバが遅いので表示に時間がかかったり。

そこで、cgiをいじって、やってみたのが下。
こんな風に表示できる
wgetを使って画像をいったんディレクトリに保存し、
それを読み込むことで表示させてみた。

C言語初級しか受けていないので、かなり手探りでした。すいません。

# imageディレクトリに画像が既に取得済みかチェック
if (-f "./image/ASIN.09.TZZZZZZZ.jpg"){
   $imageurl = "./image/$ASIN.09.TZZZZZZZ.jpg";
} elsif (-f "./image/ASIN.01.TZZZZZZZ.jpg"){
   $imageurl = "./image/$ASIN.01.TZZZZZZZ.jpg";
} elsif (-f "./image/$ASIN.dat"){
   $imageurl = "./image/no-image.jpg";
} else {   #新規画像ゲット開始
   system ("wget -nc -P image -q http://images-jp.amazon.com/images/P/$ASIN.09.TZZZZZZZ.jpg"); # 日本盤取得
   $imageurl = "./image/$ASIN.09.TZZZZZZZ.jpg";
      if (-s "./image/$ASIN.09.TZZZZZZZ.jpg" == 807){ # 日本盤がデータ無し
         system ("wget -nc -P image -q http://images-jp.amazon.com/images/P/$ASIN.01.TZZZZZZZ.jpg"); # 輸入盤取得
         $imageurl = "./image/$ASIN.01.TZZZZZZZ.jpg";
         unlink ("./image/$ASIN.09.TZZZZZZZ.jpg") # 無駄データ削除
      }
   if (-s "./image/$ASIN.01.TZZZZZZZ.jpg" == 807){ # 輸入盤がデータ無し
      $imageurl = "./image/no-image.jpg"; 
      open(OUT, "> ./image/$ASIN.dat"); # 画像無し用dat作成
      unlink ("./image/$ASIN.01.TZZZZZZZ.jpg") # 無駄データ削除
   }
}


参考にしたサイト
http://www.geocities.jp/horiuchimasaru/wget.html
http://hail2u.net/blog/coding/air_2.html
http://a-h.parfe.jp/intro.html
http://tohoho.wakusei.ne.jp/wwwcgi.htm

その後、
Amazon XSLTを使用したものの方が遙かにインタラクティブに出来ました。
http://www.j-love.info/ino/archives/000164.html



May 16, 2004 3:46 PM | E
Copyright© 2004-2008 Yukito Inoue All rights reserved.

Link
« profile: Yukito Inoue | Main | WHERE ARE WE RUNNIN? »
Category: affiliate program


Trackback:
http://www.j-love.info/cgi-bin/mt_test3/mt-tb.cgi/493
Comments
Post a comment










認証コードに数字の
0と1はありません。



イノウエのレスポンスに非常に時間がかかります。
ご了承願います。

affiliate program entries
amazon_ecs_xslt_br_ Amazon ECS XSLT <br /> レビューに含まれる改行を削除
  - XSLTで呼び出した Amazonのレビューに含まれている<br />が削除 出来なかったのだが、マットサー

amazon_ecs_40_xslt_template amazon ecs 4.0 xslt template アマゾン テンプレート
  - ECS3.0が終了してしまったためあわてて作成した テンプレート。 ・テンプレートファイル(.xslで保存する) ama

amazon_ecs_30_shutdown_2 Amazon ECS 3.0 shutdown 2 パラメータが違いすぎ。。
  - Amazonからのレスポンスを貼付ける事は web上に転がっているテンプレートを コピペするだけで可能だ。 だが重要なの

amazon_ecs_30_shutdown Amazon ECS 3.0 shutdown AWS3.0終了
  - Amazon.comからメールが送られてきて あんたのところのサイトはAmazon ECS 3.0のリクエストを 未だに

amazoncom_jp Amazon.com -> jp アメリカのアマゾンの商品を日本で買う
  - Amazon.comを日本で利用する方法を紹介するページを 作ってから3年半ほどたった。 その間にこのページを通して購入

pageviews
today: today / yesterday: yesterday / total