2013/03/05

世界中のビールが検索できる Open beer database API

Open beer databaseは、まさしく世界中の「ビール」のデータベース。何に使うのかサッパリわからないが、今時のRESTful なAPIを提供しているみたいなので、試してみなきゃいかんでしょ!

API仕様

とりあえず、一覧表示APIの仕様だけ掲載します。callbackを指定すると、JSONPとしても使えます。その他のAPIの仕様については、Open Beer Databaseのページで調べてください。

http://api.openbeerdatabase.com/v1/beers.json?callback=コールバック名

レスポンス例

うぉーまじでデータが返ってきたよー。しかも大量に...。レスポンスに含まれるbreweryとは、醸造所のことらしい、メーカーね。日本のビールもあるのかなぁ。ちなみに私はAsahiのMasterやレーベンシュタインというビールが好き。
{
    "page":1,
    "pages":2,
    "total":73,
    "beers":[
        {
            "id":1,"name":"(512) ALT",
            "description":"A German-style amber ale that is fermented cooler than typical ales and cold conditioned like a lager. ALT means \"old\" in German and refers to a beer style made using ale yeast after many German brewers had switched to newly discovered lager yeast. This ale has a very smooth, yet pronounced, hop bitterness with a malty backbone and a characteristic German yeast character. Made with 98% organic two-row and Munich malts and US noble hops.",
            "abv":6.0,
            "created_at":"2010-12-07T02:53:38Z",
            "updated_at":"2010-12-07T02:53:38Z",
            "brewery":{
                "id":1,
                "name":"(512) Brewing Company"
            }
        },
        {
            "id":2,
            "name":"(512) Bruin",
            ...
    ]
}

JavaScriptのサンプル

JSONPで表示するサンプルを作ってみました。
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript">
$(function() {
    $('#btn').click(function() {
        var $this = $(this);
     $.getJSON('http://api.openbeerdatabase.com/v1/beers.json?callback=?', {}, function(json) {
         for (var i = 0; i < json.beers.length; i++) {
          $('<li><b>'+json.beers[i].name+'</b> - ' + json.beers[i].description +'</li>').appendTo('#beers');
         }
     })
 });
});
</script>
</head>
<body>
<div>
 <button id="btn">Click</button>
 <ul id="beers">
 </ul>
</div>
</body>
</html>
こんな感じでたくさん表示されます。このビールのデータベースですが、更新・削除などもAPI経由で実現できるみたいです。要は、共有データベースみたいなものなんでしょうが、削除とか怖くないんだろうかー。

まとめ

ビールはともかく、ワインのAPIとかも探せばあるかもしれませんね。ワインの方が需要がありそうー。また、時間があればワインのAPIも探してみます。お約束ですが、アルコールは二十歳を過ぎてから。

0 件のコメント:

コメントを投稿