Perlを中心とした技術系の話などをつらつら

2005年04月10日

Amazon Keyword Search クエリの文字コードを指定可能に

サイトの頭についているAmazon Keyword Searchですが、日本語を入力して検索すると文字化けて正しく検索できなかったのを修正しました。

そもそもAmazon Keyword Searchは文字コードについては何にも処理しておらず、飛んでくるクエリはEUCであるという前提で作っていたので、このブログのように文字コードがUTF8だと文字化けるんですよね。なのでcというパラメータでクエリの文字コードを指定できるようにし、対応しました。

Posted by horiuchi at 05:13 | Permalink | Comments (1) | TrackBack (0)

2004年12月25日

画像がない場合は「No image」画像を表示するように

amazletのJavascriptを参考にして、Amazon Keyword Searchも商品の画像がない場合、「No Image」の画像を表示するようにしました。

それと地味にブラウズノードを手動で追加してます。自動化はまだできず。。

Posted by horiuchi at 04:37 | Permalink | Comments (0) | TrackBack (0)

2004年12月13日

Amazon Keyword Searchをちょこっと拡張

Amazon Keyword Searchのブラウズノード検索をちょこっと拡張しました。拡張点は以下の通り。

  • ブラウズノードの階層構造に対応
    • ノードに子ノードがある場合は右側に子ノード一覧を表示するようにしました。
  • ノードのパンくず表示
    • ノードのパンくずを書籍情報の上に表示するようにしました。
  • 2度目以降の表示の高速化
    • 今までは同じノードのランキング表示でもアフィリエイトIDが異なるとキャッシュを使わなかったんですが、同じノードであればキャッシュにヒットするようにしました。
  • Google Adsenseをつけた
    • URLトラッキング機能を試したかったのでつけてみました。

ブラウズノードについては、現在は手動で更新しているので、すべてのブラウズノードを網羅していません。この部分については手動で追加していくのはしんどいので自動化したいですね。

時間があるときにWWW::Mechanizeとかを使ってやってみようと思います。

Posted by horiuchi at 00:58 | Permalink | Comments (0) | TrackBack (0)

2004年12月07日

AWS Keyword Searchにブラウズノード別売り上げTOP20を追加

hori-uchi.com: AWS Keyword Searchにブラウズノード別売り上げTOP20を表示する機能を追加してみました。

キーワード検索についてもちょっと修正して、ページングを行えるようにしました。また、1ページに表示する件数を20件にしたので、検索速度も少し速くなったと思います。

Posted by horiuchi at 11:39 | Permalink | Comments (2) | TrackBack (0)

2004年12月04日

Amazon Keyword SearchとBidders Keyword Searchに手を加えました。

先日作ったAmazon Keyword SearchBidders Keyword Searchに以下のような改良を施しました。

*Amazon Keyword Search

  • 任意のアフィリエイトIDを使えるようにした。

今までは無条件で僕のアフィリエイトIDを埋め込んでいましたが、URLに特定の書式でアフィリエイトIDを埋め込むことでそのアフィリエイトID付きのリンクを生成するようにしました。URLの書式はこんな感じです。

http://hori-uchi.com/aws/aaff/アフィリエイトID/

たとえば僕のアフィリエイトIDはhori-uchiwebloなので、それを埋め込むとこうなります。

http://hori-uchi.com/aws/aaff/hori-uchiweblo/

*Bidders Keyword Search

  • 検索した商品にアフィリエイト付きリンクをつけた。
  • 任意のアフィリエイトIDを使えるようにした。

ビッダーズの方もURLに任意のアフィリエイトID,リンクIDを埋め込むことでキックバック先を変更できるようにしました。URLのルールは以下の通りです。

http://hori-uchi.com/bidders/baff/アフィリエイトID/リンクID/

実際に値を放り込むとこんな感じになります。

http://hori-uchi.com/bidders/baff/0s8fBBsidxhs_uQRu3db4Nq--/309638/

後は両方ともページ送りがついてないので、それはそのうちつけようかと。。Data::Pageでも使えば簡単にできると思うので時間を見つけて実装します。

Posted by horiuchi at 02:19 | Permalink | Comments (0) | TrackBack (0)

2004年11月29日

Amazonウェブサービスで遊んでみました。

今週末はAmazonウェブサービスをいじってました。それでできたのがこれです。

hori-uchi.com: AWS Keyword Search

SledgeとNet::Amazonを使って作り、mod_perlで動かしています。単純な検索アプリです。ちなみに検索結果のリンクには僕のアフィリエイトIDが入ってますのでここから買ってもらえると僕がすこししあわせになりれます(笑)。

それにしてもNet::Amazon便利すぎです。RESTでどうこうとかXMLがなんたらとか全く意識しないでAmazonウェブサービスを利用できちゃいます。この部分の実装はほんとに一瞬でできてしまいました。

しかーし、Net::Amazonのおかげでこのまま順調にいくかと思いきや、別のところではまってしまいました。。

CGI環境で動かすと問題ないんですが、mod_perlにすると、以下のようなエラーがたまにでてしまうんです。

Use of uninitialized value in subroutine entry at /usr/local/lib/perl5/site_perl/5.8.5/Log/Log4perl.pm line 122.
[Sun Nov 28 20:37:21 2004] [error] Undefined subroutine &main:: called at /usr/local/lib/perl5/site_perl/5.8.5/Log/Log4perl.
pm line 122.\n

結構悩みましたが、Log::Log4perlをuseする時点でたまにエラーがでているようなので、apacheの起動時にuseするようにしたところ、エラーがでなくなりました。でも原因がよくわからないのがちょっと気持ち悪いです。だれかおしえてー。

Posted by horiuchi at 00:48 | Permalink | Comments (2) | TrackBack (0)