GANCHIKU.com

釣られた。Services_KakakuCom

2006年9月28日

ダメだ。WebService::KakakuCom価格.com API for rubyに完全に釣られた。そして、書いている最中に価格.com Parser作った に先を越された。つーか、みんな超弩級なスピードだな。

確かに「価格.com Parserを作った」はPHPなスクリプトであるわけだが、私の方はPHP5版ってことで。つーわけで、書いてみた。日本のサイトなので、PEARにはあげるつもりはない。日本PHP会が作る?PEARチャンネルサーバに載せることはありだなー。つか、かなり適当なので、修正する箇所大有り。。。初期の予定のException使ってねーじゃん。。。orz。

今回は、さらに釣られてTDDで書いてみようと思ったわけだが、今回はパス。ユニットテストは好きなのだが、横着な私が出てきてしまったので。

タイポ指摘

a.リクエストURL

http://api.kakaku.com/Ver1/ItemSerach.asp?パラメータ名=パラメータ値・・・

って。。。Searchだろ。。リクエストURL間違えてどうする。

というわけで、当分ここに置いておく。後でインタフェースは変えると思うけど、とりあえず。
pear コマンドでインストールできるよ。
$ pear install http://www.unchiku.com/Services_KakakuCom-0.1.0.tgz
ダウンロードするときは、下のリンクで、よろしこ。
Services_KakakuCom-0.1-0.tgz

インストールは、Projects at GANCHIKU.com を見てください。ブログのリンクは古くなるので、0.1.0はそのうち消すと思います。

サンプルは、こんな感じで。

<?php
require_once 'Services/KakakuCom.php';

try {
    $kakakucom = new Services_KakakuCom;
    
$searchResult $kakakucom->search(array('Keyword' => 'コンピュータ''ResultSet' => 'mini'));
    
$number = (string)$searchResult->NumOfResult;
    print 
"Number: {$number}\n";
    foreach (
$searchResult->xpath('//Item') as $item) {
        
$productID[] = (string)$item->ProductID;
    }
    
$productResult $kakakucom->product(array('ProductID' => $productID'ResultSet' => 'mini'));
var_dump($productResult);
} catch (
Services_KakakuCom_Exception $e) {
    print 
$e;
}
?>

つーか、遊んでいる場合じゃないな。。。現実逃避してすいません。。。。文章書くよりプログラム書いている方が楽しいんだもん。。。明日の仕事大丈夫かな。眠いぞ。。。


上にあるexampleのタイポ報告がありました。どうもありがとうございます。時期バージョンでは、反映させますので、よろしくお願いします。

釣られた。Services_KakakuCom への9件のコメント

  1. arisawa より:

    トラックバックありがとうございます!
    自分のはURL投げるだけなので、値をセットするところから作るべきだったんですけどね。
    スピード重視で前に作ったのを流用してしまいました。

    で、タイポ指摘
    $ pera install http://www.unchiku.com/Services_KakakuCom-0.1.0.tgz
    pearでございます

  2. shin より:

    お。私もタイポしてた。。。指摘どうもありがとうございます。

  3. Yatena より:

    はじめまして、みなさん本当に早いですね。

    価格.com API JSONP
    http://jsonp.yatena.com/

    APIの結果をJSONP形式で出力して、Ajaxで利用したり、ブログに貼れるようにしたサービスを公開しました。
    是非ご覧下さい。

  4. shin より:

    Yatenaさん。
    JSONPですか。最近、他のことでちょっと調べてましたー。
    しかし、Yatenaさんも速いですねー。

    arisawaさん。
    タイポ指摘どうもです。自分もしっかりしないとなー。これからバージョンをあげていきますよー。リンクもしているし、ネタもかぶっているのですが、secondlifeさんには、トラックバック、拒否られましたw イマイチトラックバックの方法については、よくわかんないです。

    しかし、このスピード感のある開発がWeb2.0ってやつかなーなんて思ってみました。というか、最近、一人じゃ追い付いていない。。。会社とは関係のないことをプライベートでやっているので。

  5. arisawa より:

    こんばんわ
    拒否られましたかw なんでだろ?

    >しかし、このスピード感のある開発がWeb2.0ってやつかなーなんて思ってみました。というか、最近、一人じゃ追い付いていない。。。会社とは関係のないことをプライベートでやっているので。

    わたくしも似た境遇です。会社の意向とは違う方向に進んでしまっております…
    お互いがんばりましょう!

  6. ピンバック: using API; 価格.com APIのライブラリが続々

  7. shin より:

    arisawaさん
    もしかしたら、私のピンのトラックバックの打ち方かもです。URL間違えたかも。でも、面倒なので、次は打たないです。

    そうですよねー。私がプライベートでやっているYouTubeも、Seleniumも、KakakuComも一度も会社では使ったことがないです。。まぁ、だからがんばれるって感じがするんですけどねw

    そうれす。お互いがんばりましょー!

  8. ELF より:

    Services_Hatenaとかもあるしpear.php.netでもいいかも!!

  9. shin より:

    ELFさん

    どもですー。
    そうですね。考えてみます。ローカルでテスト等をして、いけそうだったら、pear-devに一度流してみます。そして、そこで「オーケー」のサインが出たら、出してみます。

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Shin Ohno 2003-2012