リクエスト仕様
ドキュメントは、ここにあります。いくつかAPIメソッドがあるようですが、ここでは、検索APIメソッドを紹介します。アクセスキーなどは必要ありません。
http://api.photozou.jp/rest/search_public (GET or POST)
keyword
検索キーワード(最大100文字)
copyright
著作権設定で検索(normal:ライセンスなし、creativecommons:CCライセンス, all:すべて)
copyright_commercial
CCライセンス下で営利目的での利用(copyrightパラメータにcreativecommonsを指定したときのみ有効)(yes:許可、no:許可しない)
copyright_modifications
CCライセンス下で改変の許可(yes:改変を許可、no:改変を許可しない、share:同一条件化で配付)
limit
検索の上限を指定します。(省略時100件、最大1000件)
offset
検索のオフセットを指定します(0から始まる)。
レスポンス仕様
こんな感じのXMLが帰ってきます。<?xml version="1.0" encoding="UTF-8" ?> <rsp stat="ok"> <info> <photo_num>100</photo_num> <photo> <photo_id>172424880</photo_id> <user_id>105169</user_id> <album_id>7626966</album_id> <photo_title>魁桜</photo_title> <favorite_num>0</favorite_num> <comment_num>0</comment_num> <view_num>0</view_num> <copyright>creativecommons</copyright> <original_height>1456</original_height> <original_width>2184</original_width> <copyright_commercial>no</copyright_commercial> <copyright_modifications>no</copyright_modifications> <date>2013-03-21</date> <regist_time>2013-03-22T09:27:09+09:00</regist_time> <url>http://photozou.jp/photo/show/105169/172424880</url> <image_url>http://kura2.photozou.jp/pub/169/105169/photo/172424880.jpg</image_url> <original_image_url>http://kura2.photozou.jp/pub/169/105169/photo/172424880_org.jpg</original_image_url> <thumbnail_image_url>http://kura2.photozou.jp/pub/169/105169/photo/172424880_thumbnail.jpg</thumbnail_image_url> <large_tag><![CDATA[<a href="http://photozou.jp/photo/show/105169/172424880"><img src="http://kura2.photozou.jp/pub/169/105169/photo/172424880.jpg" alt="魁桜" width="450" height="300"></a><br><a href="http://photozou.jp/photo/show/105169/172424880">魁桜</a> posted by <a href="http://photozou.jp/user/top/105169">(C)のりりん</a>]]></large_tag> <medium_tag><![CDATA[<a href="http://photozou.jp/photo/show/105169/172424880"><img src="http://kura2.photozou.jp/pub/169/105169/photo/172424880.jpg" alt="魁桜" width="240" height="160"></a><br><a href="http://photozou.jp/photo/show/105169/172424880">魁桜</a> posted by <a href="http://photozou.jp/user/top/105169">(C)のりりん</a>]]></medium_tag> </photo> ... </info> </rsp>
PHPサンプル
PHPで、このAPIを使って簡単なフォト蔵検索を作ってみます。きたないコードでごめん w。文字コードは、utf-8です。最大1000件までしか検索できないので、必要に応じてoffsetパラメータを指定するようにすれば、ページングができると思います。
<html> <body> <h1>フォト蔵 CC Serach</h1> <form method="get"> <input type="text" name="q" value="<?php echo @$_GET['q']; ?>"><button type="submit">Search</button> <select name="limit"> <option value="100">100</option> <option value="200">200</option> </select> </form> <hr> <?php if (isset($_GET['q'])) { $limit = intval($_GET['limit']); $url = 'http://api.photozou.jp/rest/search_public?copyright=creativecommons&keyword='.urlencode($_GET['q']).'&limit='.$limit; echo file_get_contents($url); $result = simplexml_load_file($url); ?> <p><?php echo $result->info[0]->photo_num; ?>件がヒット</p> <ul> <?php foreach ($result->info[0]->photo as $photo){?> <li style="float: left; margin: 0 10px 10px 0;"> <a target="_blank" href="#"> <img src="<?php echo $photo->thumbnail_image_url ?>"> </a> </li> <?php } } ?> </ul> </body> </html>
動かすとこんな感じになります。ちょっと楽しくなってきました。
0 件のコメント:
コメントを投稿