2007年06月28日

スパムメールを活用して英語を勉強してみるというのはどうかな? このエントリーをはてなブックマークに追加

こんにちは、山口美江です(嘘です)。

スパムメールが頻繁にやってきては、消したりしている、今日この頃。
りょーちは、オフィシャルでもプライベートでも、英語でやりとりする相手はいないので、全文が英文のメールは100%スパムメールって感じなので、読まずに直ぐに削除したりしている。

毎回「送ってきても、直ぐに削除するのになぁ・・・」と思いながら無意識のうちにメールを選択し、DELETEキーを押したりしているのだが、ふと、「実はこれは英語の勉強になるのでは?」と思ったりしてみた。

毎日英語のセンテンスが送られてくるサービスだと考えてみたらどーだろう?

例えば、今日送られてきたメールはこんな感じ。
Subject : Appetite control for hours on end

A diet pill that really works!

It is called Hoodia Gordonii. It is a simple appetite suppressant that has
been used for hundreds of years and we have got it here just for you.

Lose weight fast - click here!

ふむ、これを訳して見ようと試みる。

「appetite」って何だ? 辞書で調べると「食欲」ってことだった。
「on end」ってのは「続けて」とかだっけ?
何時間も続けて食欲をコントロール。ふむふむ。
以降も訳してみるとこんな感じ?
タイトル : 何時間も続けて食欲をコントロール

本当に利くやせ薬!

それは Hoodia Gordonii と呼ばれています。
それは何百年間も使用されている簡単な食欲抑制剤です。
そして、私たちはあなたのためにここにご用意いたしました。(違う?)

速くやせてください。
ここをクリックしてね!

ふむ、ちょっとは勉強になったのか・・・

忙しいときは、やっぱ、直ぐに消しちゃうと思うけど、もしかすると、意外といい勉強方なのかもしれない。

余裕があるときにGmailの「迷惑メール」フォルダとかの内容に目を通してみることにしてみよう。

#勿論、勉強のあとは、スパムメールを削除っす。
posted by りょーち | Comment(0) | TrackBack(0) | その他

2007年06月26日

「あわせて読みたい」勝手 API for JSONPを作ってみた このエントリーをはてなブックマークに追加

こんにちは、猫男爵です(嘘です)。

サイドフィード株式会社 というブロガーにはとっても有名な会社がある。
ここでは他とかなり違ったブロガーの心をくすぐるイロイロなサービスが展開されていてかなりよい会社だと思われる。

その、サイドフィードが最近提供したサービスで あわせて読みたい というサービスがある。
BLOGのURLを入力すると、そのブログと「あわせて読みたい」サイト、つまり関連性の高いと思われるサイトを表示してあげるというもの。

この新しいサイトレコメンド(お薦め)機能は、サイドフィードの独自のロジックで推薦されているものと思われ、通常は あわせて読みたい のサイトで検索するか、サイドフィードが提供するブログパーツを用いて調べるのだが、「あわせて読みたい」のサイトをスクレイピングして、URLを入力すると、「あわせて読まれる」であろうサイトをJSON形式で出力するよーなモノをつくってみた。
ってこんなことしちゃいけないのかな? (利用規約を読む限りでは禁止されていないよーな気がするので、指摘されるまでは掲載してみよう)。

上記URLに行き、読みたいサイトのURLを入力すれば、その結果が返ってくるよーなものである。で、これはどーやってるかといえば、URLを入力すると あわせて読みたい のサイトにそのURLを渡し、表示される結果をスクレイピングし、結果を取得し、サーバ側でJSON形式に加工して出力するよーなものである。

パラメータ説明:

end point URL:
http://www.usamimi.info/~ryouchi/awasete/index.php
パラメータ:callback:
コールバック関数名を指定
パラメータ:url:
取得したいurlを指定

使い方:

callback関数:viewawasete()
url:http://ryouchi.seesaa.net/
の場合、
http://www.usamimi.info/~ryouchi/awasete/index.php?callback=viewawasete&url=http://ryouchi.seesaa.net/
などと指定する。

戻り値:

戻り値は下記のような感じ
viewawasete([{"url":"http:\/\/satokoto.blog10.fc2.com\/",
"title":" \u30d6\u30ed\u30b0\u30d1\u30fc\u30c4\u3092\u3055\u304c\u305b",
"more":"http:\/\/awasete.com\/show.phtml?u=http%3A%2F%2Fsatokoto.blog10.fc2.com%2F"},
{"url":"http:\/\/sasori-flower.jugem.jp\/",
"title":" \u880d\u3010\u30b5\u30bd\u30ea\u3011\u306e\u7a7a\u9593",
"more":"http:\/\/awasete.com\/show.phtml?u=http%3A%2F%2Fsasori-flower.jugem.jp%2F"},
{"url":"http:\/\/freethink.way-nifty.com\/action\/",
"title":" \u601d\u8003\u3068\u7fd2\u4f5c",
"more":"http:\/\/awasete.com\/show.phtml?u=http%3A%2F%2Ffreethink.way-nifty.com%2Faction%2F"},
{"url":"http:\/\/daijiman.slack77.net\/",
"title":" SLACK77 >> DAIJIMAN",
"more":"http:\/\/awasete.com\/show.phtml?u=http%3A%2F%2Fdaijiman.slack77.net%2F"},
{"url":"http:\/\/blog.goo.ne.jp\/lysander\/",
"title":" \u5f92\u7136\u3068\uff08\u7f8e\u8853\u3068\u672c\u3068\u6620\u753b\u597d\u304d...\uff09",
"more":"http:\/\/awasete.com\/show.phtml?u=http%3A%2F%2Fblog.goo.ne.jp%2Flysander%2F"},
{"url":"http:\/\/7thupmedia.com\/",
"title":" 7th up media",
"more":"http:\/\/awasete.com\/show.phtml?u=http%3A%2F%2F7thupmedia.com%2F"},
{"url":"http:\/\/css-happylife.com\/",
"title":" CSS HappyLife",
"more":"http:\/\/awasete.com\/show.phtml?u=http%3A%2F%2Fcss-happylife.com%2F"},
{"url":"http:\/\/d.hatena.ne.jp\/nyama\/",
"title":" Another \u671d\u9854\u65e5\u8a18",
"more":"http:\/\/awasete.com\/show.phtml?u=http%3A%2F%2Fd.hatena.ne.jp%2Fnyama%2F"},
{"url":"http:\/\/www.iyahooi.com\/",
"title":" i yahoo i.com:blog",
"more":"http:\/\/awasete.com\/show.phtml?u=http%3A%2F%2Fwww.iyahooi.com%2F"},
{"url":"http:\/\/www.simplexsimple.com\/",
"title":" S i M P L E * S i M P L E - \u30a6\u30a7\u30d6\u8077\u4eba\u306e\u305f\u3081\u306e\u5c0f\u7c8b\u306a\u30cd\u30bf\u5e33",
"more":"http:\/\/awasete.com\/show.phtml?u=http%3A%2F%2Fwww.simplexsimple.com%2F"}]);

まあ、 あわせて読みたい のサイトに行けば済む話しなので、需要はとっても少ないと思うが、こんなこともできるよってことでやってみたっす。

posted by りょーち | Comment(2) | TrackBack(1) | Web周辺技術

2007年06月25日

PEAR::Package::Pager を使わずphpでページング処理ができるpager()関数 このエントリーをはてなブックマークに追加

こんにちは、トカちゃんこと、渡嘉敷勝男です(嘘です)。

先日作成した Flickr 日本語検索 では、検索結果が多い場合にページ別に分けて結果を表示している。
通常検索エンジンで検索した際、その検索結果が多い場合に、「 1 2 3 4 5 6 7 8 9 10 次へ>」のようなナビゲーションがされるが、まあ、これと殆ど同じよーなものである。

phpでの実装方法がよくわからなかったのだがどうやら Pear::Pagerの使い方 (Nega Diary) を見ると PEAR :: Package :: Pager を利用するのがよろしいっぽい。
しかし、レンタルサーバなどで、気軽に PEAR ライブラリを入れられない場合は自前で実装する必要があるよーである(うーむ)

で、いろいろ探していたら、教えてgooにそのものズバリの質問があった。

ふむふむ。これを見てみると yambejpさん の回答が例を交えてなかなかわかりやすく書かれていたのでこの方法を採用してみた。

ただし、上記の方法だと、ページを区切る数などが固定されているため yambejpさん の作成されたpager()関数を(若干)汎用的にしてみた。

ちなみに改良してみたpager()関数が下記になる。


<?php
// pager()関数関連の定義
// ページ情報となる変数名の設定
define(PAGE_VALUE "id");
// ページをいくつで区切るか?
// 100件ごとに区切りたいなら100を指定
define(PER_PAGE,10);
// ページメニューの数の幅
// ページ総数 59 / VIEW_PAGE_MENU_WIDTH = 5の場合
// 26ページ目を表示しているときは下記のように表示される
// < 21 22 23 24 25 26 27 28 29 30 31 >
// 26 の前5つ分(21まで)と後ろ5つ分(31まで)を表示する
define(VIEW_PAGE_MENU_WIDTH 5);
// 前に戻るときのマーク 「< (&lt;)」とか「前」とか「←」とか指定
define(PREV_MARK "&lt;");
// 次に行くときのマーク 「< (&gt;)」とか「次」とか「→」とか指定
define(NEXT_MARK "&gt;");
// pager()関数ここから
function pager($idname,$countRe){
    
// 現在のページ情報を取得
    
$id =$_GET[$idname];
    
// ページ情報以外のパラメータを補完し、$other_paramにセット
    
foreach($_GET as $key => $value){
        
// $idname 以外のGETメソッドのパラメータを $other_param に再構築
        
if ($key != $idname){
            
// リンクさせるためにurlencodeする.
            
$other_param .= "&".$key."=".urlencode($value);
        }
    }
    
// ページ数の指定がなければページ数を1にセット
    
if($id==""$id=1;
    
// 最終ページを計算する
    // 総Hit数をページング単位で割ると総ページ数が計算される
    // ページング単位PER_PAGEを10とすると最終ページ数$maxPageは
    // 総Hit数 / PER_PAGEを切り上げたものとなる。
    // 検索結果205件 PER_PAGE:10の場合 $maxPage = ceil(205 / 10) = 21
    
$maxPage=ceil($countRe PER_PAGE);
    
// maxPage=1の場合(PER_PAGEより少ない検索結果)
    // 選択したページ数(id)よりもmaxPageが小さいときはfalse
    
if( ($maxPage == 1) or ($maxPage $id) ) return false;
    
// 選択したページ数がVIEW_PAGE_MENU_WIDTHより大きいとき
    
if($id VIEW_PAGE_MENU_WIDTH 1){
        
// スタートページは選択ページからVIEW_PAGE_MENU_WIDTHを
        // 引いたもの程度出せばよい
        
$startPage $id VIEW_PAGE_MENU_WIDTH;
        
// より小さいもの「 < 」の部分はさらにその$startPageから1を引いたもの
        
$startMore "<a href=\"$PHP_SELF?".$idname."=".($startPage 1).$other_param."\">".PREV_MARK." </a>";
    }else{
        
// そうでなければ$startPage=1(一番はじめのページ = 1)になる
        
$startPage 1;
    }
    
// 選択したページ数に5を足したものより、更に$maxPage
    // (最大ページ)が大きければ
    
if($id VIEW_PAGE_MENU_WIDTH $maxPage){
        
// 表示される最終ページは選択したページに
        // VIEW_PAGE_MENU_WIDTHを足したものになる
        
$endPage $id VIEW_PAGE_MENU_WIDTH;
        
$endMore " <a href=\"$PHP_SELF?".$idname."=".($endPage 1).$other_param."\"> ".NEXT_MARK."</a>";
    }else{
        
// そうでなければ、$endPageは最終ページになる
        
$endPage $maxPage;
    }
    
// ここまでで、計算されたのは
    // $id        : 現在選択しているページ番号
    // $maxPage   : 検索の最終ページ
    // $startPage : 表示されるはじめのページ
    // $endPage   : 表示される最後のページ
    // $page_footer="" として$page_footerを初期化
    
$page_footer="";
    
// $startPage から $endPageまで繰り返し
    
for($i $startPage $i <= $endPage $i++){
        
// $i = $idだったら選択されたページなので、fontsizeを大きくする
        // その際、リンクはなし
        // そうでなければ、id=$iをリンクにセットする
        
$page_footer.= " ".(($id==$i)?"<span style='font-Size:120%'>$i</span>":"<a href=\"$PHP_SELF?$idname=$i$other_param\">$i</a>");
    }
    
// $startMoreと$endMoreを$page_footerの前後に付け足す
    
$page_footer $startMore.$page_footer.$endMore;
    
// $page_footerを表示
    
print $page_footer;
}
// pager()関数ここまで

?>



yambejpさん の作成された元のpager()関数がよくできているため、若干の修正でできたよーである。

利用する際はページ用の変数として利用する変数名と総ページ数を渡せば自動的にpager()関数が変数名を_GET[]から探してきて、リンクを作成するよーになっている。

ページ変数がidで総ページ数が420件の場合は

pager( "id" ,420);


のように指定すればよい。

勿論DBなどと連携する際は、総ページ数を取得したり、一覧を表示させたりするのはきちんと php で書かなきゃだめですよ。

うーむ、なかなか便利ばい。

posted by りょーち | Comment(33) | TrackBack(1) | Web周辺技術

2007年06月21日

php と flickr APIを使った写真検索 このエントリーをはてなブックマークに追加

こんにちは、浅茅陽子です(嘘です)。

以前 Flickr の写真をBLOGに貼る Flickr Tag というものをテキトーに作ってみたが、実はその際は Flickr Services というFlickrで提供されているAPIは全く使っていなかった。ちなみに、Flickr TAGではFlickrが提供するRSS情報を元に写真を表示するような実装方法だった。

で、このBLOGにFlickr APIについての問い合わせが先日あったので、ちょいと調べてみると、APIでいろいろできそーなことがわかってきた。

なので、試しに Flickr の日本語検索サイトを作ってみた。



まあ、上記サイトではFlickrの写真を検索できるよーなものなのだが、ここでは Flickr API を php で利用する方法についてメモっておく。

FlickrのAPI の基本は REST , XML-RPC , SOAP形式で指定されたAPIのエンドポイントにパラメータを渡し、その結果を REST , XML-RPC , SOAP , JSON , PHP(シリアライズ)で取得できるよーになっている。

また、APIにリクエストを投げるときには、API Keys が必要になる。API Keys は、

http://www.flickr.com/services/api/keys/

にアクセスして各自のAPIキーを取得する。
また、リクエスト時に日本語のような2バイト文字列を渡したい場合はUTF-8でURLエンコードした形式でリクエストする。

レスポンスのフォーマットは上記の5種類選択できるが、エンドポイントにリクエストを投げる際に format=rest とか format=json とかって感じにすればよい。

今回はとりあえずRESTなるものを使ってみた。

例えば、APIKEYが「abcdefgabcdefg」の場合「公園」に関係する写真を検索するには、こんな感じで書けばよいはず。


define (APIKEY , "abcdefgabcdefg");
define (PER_PAGE , 100); // 100ページごと区切る
$str = "公園";
$page = 1; // とりあえず1ページ目
// proxyを利用する場合は $use_proxy = 1;
$use_proxy = 0;
$proxy_host = 'proxy.example.com';
$proxy_port = 8080;
$no_proxy = array(
  'localhost', // localhost
  '127.0.0.0/8', // loopback
);
include('proxy.php');
$url = "http://www.flickr.com/services/rest/?";
$url .= "method=flickr.photos.search";
$url .= "&format=rest";
$url .= "&api_key=".APIKEY;
$url .= "&page=".$page;
$url .= "&per_page=".PER_PAGE;
$url .= "&text=".urlencode($str);

$rdata = http_request($url);
$data = $rdata['data'];
$xml = simplexml_load_string($data);


ここまでくれば、$xmlにデータが取得できているので、あとはforeachで、


foreach($xml->photos->photo as $item){
  if ($item['title']<>""){
    echo $item['title'].'<br />';
  }else{
    echo '(タイトルなし)<br />';
  }
}


って感じにすればよさそう。
print_r($xml); などとしてxmlファイルにどんな感じで取得されているかを見るってのがよろしいと思われる。

更に上記XMLファイルから写真のidを$item['id']で取得し、そのidを利用して写真の詳細情報を更に取得すればよかろう。

また、$strは通常フォームから入力されたものになるので、
$str = $_GET['word'];
などとなるよーな感じであろう。

この基本ができれば、あとは Flickr Services と睨めっこしてなんとかなる(はず)。

うーむ。結構便利だな。
posted by りょーち | Comment(2) | TrackBack(0) | Web周辺技術

2007年06月18日

どの検索エンジンから検索されたのかを知るスクリプトのテスト このエントリーをはてなブックマークに追加

こんにちは、李白です(嘘です)。

アクセス解析エンジンでよく見かける検索エンジン毎のrefererを知る方法はどうやるのかよくわかんなかったので、想像でテストスクリプトを作ってみた。

get_term()関数で場合わけをしてみて、どの検索エンジンからのパターンかをチェックする。

ホントは、
if (@$_SERVER['HTTP_REFERER'] != ''){ 
$refer = $_SERVER['HTTP_REFERER'];
}
とかって感じにするのであろう。

get_term()の中で文字コードが UTF-8 でないものは mb_convert_encoding を利用して変換してみる。

get_term()関数の場合わけを増やせば、他の検索エンジンにも簡単に対応できるよーな気もする。

で、更に、javascriptで読み込んで結果をMySQLに入れればアクセス解析ソフトができそーな予感がするっす。

誰か、汎用的な関数作ってくれないかなぁ・・・

posted by りょーち | Comment(0) | TrackBack(0) | Web周辺技術

2007年06月15日

twitter API と MOGO2 もごもご APIの仕様が殆ど同じな件 このエントリーをはてなブックマークに追加

こんにちは、新藤恵美です(嘘です)。

最近、Webサービスと同時にAPIを公開しているサイトがかなり多くなっているっぽい。
APIを公開する意味はサービスによっていろいろあると思われるが、大きくは下記のよーなものではないかと思われる。
  • サービスの認知(トラフィック増大を目論む)
  • 基本仕様以外の部分はユーザで拡張して貰うことで新たなサービスの創出を狙う
  • 他の優良なサービスとのマッシュアップを期待

他にもイロイロあるんだろうけど、まあこんな感じだと思われる。
で、中には「サービスの認知」の手法として、公開APIを使ったプログラムコンテスト的なものも開催されるよーになったりしている。

そんななか、最近週1くらいのペースでサービスが立ち上がりつつあるミニブログ業界(ってそんな業界ある?)の中で ミニブログ「もごもご」 というサービスがあるっぽい。

世界的には、多分 Twitter とか Tumblr などが有名だったりするよーである。

先日言及した Feecle[フィークル] といい、Second Lifeからも使える Wassr とか ライブドアの nowa とかexciteの つぶろぐ とか 今をメモする「Timelog」 とかもそーなのかねぇ?まあ、兎に角多すぎですわ。

で、他にどんなのあるのかと思ってみたら、katsuoさんが pruto.jp - 最近のミニブログとかまとめ に素晴らしくまとめて書いていらっしゃるのでミニブログに関してはそちらをご覧いただければと思います(って、こんなにあるんっすねー)。

で、話しを元に戻すと、マッシュアップの話し。
先ほどの ミニブログ「もごもご」 では ミニブログ「もごもご」|もごもごAPI、マッシュアップコンテスト なるものを開催しているよーである。
ふむふむと思いながら ミニブログ「もごもご」|もごもごAPI 仕様書を見て軽い既視感(ってなんで、IMEで変換されないんじゃ?)を覚えた。
これ、どっかで見たことある・・・

そーである。このもごもごAPIってTwitterのAPIそっくりである。
うーむ。そこまでパクるか?
Twitter API Documentationミニブログ「もごもご」|もごもごAPI を見てみると、すげー似てるよ。ポップコーンの正一と正二くらい似てる(謎)。

試しにどれくらい似ているのか使ってみた。



上記では最新の発言を取得するだけのものなのだが、ソースの使い回しがかなり可能なほど、激似っす。ソースを公開してみたので、詳細はそちらをみていただければと思うっす。

もちろんサービスとしての振る舞いも似ているのだが、プログラマーを取り込むためには、やっぱ、長いもの(Twitter)に巻かれろ的な意図があるのだと思われる。

「Twitter用に開発したものは、Mogo2に簡単に移植できるよ」ってのを知らしめたいのではなかろうか?

うーむ。今後どんなサービスの拡がりを見せるのかに興味あるねぇ・・・
posted by りょーち | Comment(2) | TrackBack(0) | Web周辺技術

2007年06月13日

Youtubeの動画(FLV)をダウンロードする方法がわかった このエントリーをはてなブックマークに追加

こんにちは、本居宣長です(嘘です)。

Youtubeのダウンロードを実装しているサイトが幾つかある。
どーやっているのか皆目見当がつかなかったので「おー、すごいね」という感じでユーザとしてたまにダウンロードしてみたりした。

で、先日そこのサイトを久々に使ってみたら、どーやらダウンロードできなくなっていた。結果的に現在はそのサイトでもダウンロードできるよーになっているのだが「うーむ」と思い、自分でダウンロードできるよーなスクリプトができないものかと適度に調べていたら拍子抜けするくらい簡単に実装できることがわかったので、早速作ってみた。



上記サイトに行き、YouTubeのサイトのURLを入力すると、FLVをダウンロードできるリンクが表示されるっす。それを徐に右クリックして、ディスクに保存するっす。

ファイル名のデフォルトは「get_video」という名前になるので、これを「hoge.flv」などという適当な名前で保存するとよいと思われます。

サーバで全てを読み込んでContent-Typeとかを変更してごにょごにょするのかとおもったら、どーやら違うっぽい。うーむ。そうだったか。

ちなみに YouTube検索用に適当に作った YouTube TAG Search で検索したものもサムネールの下にある小さな をクリックすることでダウンロードできるよーにしてみた。

保存したFLV形式の動画再生には Riva FLV Player などを利用するとよいでしょう。

ついでにブックマークレットも作ってみた。
Get Youtube File
(右クリックでお気に入りに追加してください)

Youtube上で動画を閲覧している際にこのブックマークレットを選択するとこの画面でダウンロードできるようになります。

つーか、作り終わって気づいたが、これ YouTube API 全く使ってないっす(うーむ)。

■上記サイトでやっていること
  1. YouTubeのURLを取得
  2. 取得したYouTubeのURLからダウンロード用のURLを生成
  3. 生成したダウンロード用のURLにphpで
    header("Location",$url);
    のようにしてダウンロード画面に移動(ダウンロード用のURLを呼び出せば自動的にダウンロードされるっぽい)
ふーむ、なるほどのぅ・・・
posted by りょーち | Comment(2) | TrackBack(0) | Web周辺技術

2007年06月12日

Feecle 勝手 API for JSONP をつくってみた このエントリーをはてなブックマークに追加

こんにちは、ボブ佐久間です(嘘です)。

Twitter が未だに根強い人気を誇っているよーである。一行日記とかミニブログとかどういう括りになっているのかよーわからんですが、日本発のサービスも幾つか登場しているっぽい。

そんな中で ミニブログ Feecle[フィークル] “みんな、今なにしてる?” ってサービスを見てみた。
なんとなく Twitter の文化とちょっと違う感じの発言がされているよーにも見えなくはないが Twitter のよーに API などを提供するとよさそーな気がするっす。

で、勝手に Feecle の API をテキトーなのを2個作ってみた。
「勝手に作ってみた」ってのは例の如くサイトをスクレイピングしてJSONPで渡す手法を使っているのでサイトのデザインやHTMLの構成が変わると使えないっす・・・orz


以下パラメータ説明。

1. feecle トップページ情報取得 API
end point URL:
http://www.usamimi.info/~ryouchi/feecle/feecle_top.php
パラメータ:callback:
コールバック関数名を指定
http://www.usamimi.info/~ryouchi/feecle/feecle_top.php?callback=hoge
とかって感じに使うっす。
戻り値は、user,href,commentの3つの値をJSONP形式で返しています(UTF-8エンコードしています)。

2. feecle ユーザ記入コメント取得 API
end point URL:
http://www.usamimi.info/~ryouchi/feecle/feecle_user.php
パラメータ:callback:
コールバック関数名を指定
パラメータ:user:
ユーザ名を指定
http://www.usamimi.info/~ryouchi/feecle/feecle_user.php?callback=viewfeecleuser&user=ryouchi
とかって感じに使うっす。
戻り値はcommentの値をJSONP形式で返しています(UTF-8エンコードしています)

上記にサンプルを記載してみたので多分使えると思われるっす。

つーか、こんなことしていいのかなぁ・・・
posted by りょーち | Comment(0) | TrackBack(0) | Web周辺技術

2007年06月08日

digg APIを使って Upcoming Stories を表示するテスト このエントリーをはてなブックマークに追加

こんにちは、原坊こと原由子です(嘘です)。

Digg といえば、世界のはてブ的なソーシャルブックマークっぽいサービスだが、Digg API というものがあるよーである。

なので、APIオタクのりょーちとしては理由もなく使ってみたかったので使ってみた。

digg APIはその機能があまりに充実しているので、digg上の殆どの操作がAPIを経由してできてしまうよーな気がする。

まあ、第一弾としては、digg の Upcoming Stories を表示するよーなものをつくってみた。

diggでは幾つかのカテゴリーが存在しているのだが、上記のプルダウンメニューもdigg APIから動的に取得してプルダウンメニューを作ってみているっす。

あまりに機能が多すぎるので、まだ全て読みきれていないが、結構面白いAPIである。
やるなー。digg。

posted by りょーち | Comment(0) | TrackBack(0) | Web周辺技術

2007年06月06日

横浜対ソフトバンクの交流戦、次の横浜の先発ピッチャーをズバリ予想してみた このエントリーをはてなブックマークに追加

現在行われているプロ野球の交流戦。
横浜 vs ソフトバンクの試合で、横浜の先発ピッチャーは、
6/5(火):寺原
6/6(水):工藤
と、元ホークス出身のピッチャーを当ててきた。

ってことは、「明日は 佐久本 か?」 と、思ったら、交流戦は2試合づつなので、明日はやらないよーである。

ってことで、6/19,20の横浜スタジアムでの横浜 vs ソフトバンクの試合の横浜の先発投手は佐久本で決まりだね。

(そんなことはないか・・・)
posted by りょーち | Comment(2) | TrackBack(0) | その他