2013/02/25

開発者向けFAQサイトの stackoverflow のAPI を使ってみる

開発者向けのコミュニティーとして、海外では圧倒的に利用者の多い stackoverflow も、なにやらAPIを提供しているみたいなので、ちょっとサンプルを作って遊んでみたいと思います。

API仕様

StackoverflowのAPIを使うと、stackoverflow 上のリソースにアクセスできます。参照のみで更新はできないみたいですね。APIドキュメントはこちらです。最新バージョンは、1.1です。

レスポンス例

レスポンスは、JSON形式です。こんな感じのレスポンスが帰ってきます。実際のレスポンスは、APIドキュメントを見てください。また、APIドキュメント ページ下にある「Try it」ボタンで試してみることもできます。
{
 "total": 20161,
 "page": 1,
 "pagesize": 30,
 "questions": [
  {
   "tags": [
    "scala",
    "playframework"
   ],
   "answer_count": 0,
   "favorite_count": 0
   ...
  }
  ]
}

サンプル

検索APIを使って、簡単なサンプルをPHPで作ってみました。レスポンスは、gzip で圧縮されているので、urlハンドラーを使って解凍しているのがポイントです。

<?php
fucntion search_stackoverflow($keyword)
{
    $query = urlencode($keyword);
    $result = json_decode(file_get_contents('compress.zlib://http://api.stackoverflow.com/1.1/search?intitle='.$query));
    return $result;
}
// Sample
$result = search_stackoverflow('wordpress');
echo $result->questions[0]->title;

まとめ

利用に当たって、デベロッパー登録(各種キーの取得)などは必要ありませんが、IPアドレスベースで、APIのリクエスト数が制限されるようです。登録やOAuthなどが必要ないので、気になったらブラウザからURLを叩いて遊んでみてください。

0 件のコメント:

コメントを投稿