flickr API

flickr APIとは

Flickr Services
The Flickr API is available for non-commercial use by outside developers. Commercial use is possible by prior arrangement.
(Flickr APIは、外部開発者によって非商業的利用に限り使うことができます。商用利用は、先の取り決めによって可能です。)

サンプルサイト

flickr API サンプル

サンプルソースコード

s_flickr.php(文字コードはUTF-8)
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>flickr API サンプル</title>
  </head>
  <body>
  <h1>flickr API サンプル</h1>
<?php
  
//flickrから写真を検索してimgタグを返す関数
function search_flickr($keyword,$limit){
    
  //取得したAPIキーを設定
  $api_key  = 'ここに取得したAPIキーを入力してください';
  
  //メソッドに写真検索を設定
  $method   = 'flickr.photos.search';
  
  //検索キーワードをURLエンコードして設定
  $text = urlencode($keyword);
  
  //人気の高い順に検索
  $sort = "interestingness-desc";
  
  //取得件数を設定
  $per_page = $limit;
  
  //URLを生成
  $url = 'http://api.flickr.com/services/rest/?'.
         'method='.$method.
         '&api_key='.$api_key.
         '&text='.$text.
         '&sort='.$sort.
         '&per_page='.$per_page;
  
  //取得したXMLファイルをパースし、オブジェクトに代入
  $data = simplexml_load_file($url)
    or die("XMLパースエラー");
  
  //表示写真サイズをmサイズに設定
  $size = "_m";
  
  //変数初期化
  $ret = "";
  
  //取得できた写真の数だけループ処理
  foreach($data->photos as $photos){
    foreach($photos->photo as $photo){
      $ret .= '<a href="http://www.flickr.com/photos/'.$photo['owner'].'/'.$photo['id'].'/">';
      $ret .= '<img src="http://farm'.$photo['farm'].'.static.flickr.com/'.$photo['server'].'/'.$photo['id'].'_'.$photo['secret'].$size.'.jpg" alt="'.$photo['title'].'">'."\n";
      $ret .= '</a>';
    }
  }
  return $ret;
}

//検索ワード
$keyword = "猫";

//取得数
$limit = 10;

//写真を検索して表示
echo search_flickr($keyword,$limit);

?>
  <p>powerd by <a href="http://www.flickr.com/services/api/">Flickr Services</a></p>
  </body>
</html>

利用上の注意

APIを利用する際は、提供元APIの利用規約を必ず確認してください。
また、このサイトのサンプルソースコードの利用や解説などについては、「利用上の注意」のページをご覧ください。
2009年02月24日 サンプル集 ブックマークに追加する