リクエスト仕様
ドキュメントは、ここにあります。いくつか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 件のコメント:
コメントを投稿