Flickr APIでクリエイティブ・コモンズ(CC)ライセンスの画像を取得するには? flickr.photos.licenses.getInfoメソッド
前回はFlickr画像のライセンスの種類について、クリエイティブ・コモンズ(CC)について説明して、CCライセンスの画像は著作者のクレジット(著作者・リンク)表示さえすれば利用可能という話をしました。
今回は、flickr.photos.searchメソッドでクリエイティブ・コモンズライセンスの画像を要求するAPIリクエストについて説明します。

サンプルAPIリクエストは下の黒枠内です(「猫」に関連する画像を要求)。
実行する場合は、[取得したキー]の部分を皆さんのFlickrAPIキーに置き換えてください。
http://www.flickr.com/services/rest/?method=flickr.photos.search&format=rest&api_key=[取得したキー]&per_page=20&license=1,2,3,4,5,6&extras=owner_name&text=%E7%8C%AB

このリクエストでクリエイティブ・コモンズライセンス画像を指定している部分は、「license=1,2,3,4,5,6」です。
"license"はライセンスの種類は指定するオプションで、"1,2,3,4,5,6"は六種類のクリエイティブ・コモンズライセンスに対応しています。
それぞれの数字がどのライセンスなのかを知るために、APIではflickr.photos.licenses.getInfoメソッドが用意されています。
http://www.flickr.com/services/rest/?method=flickr.photos.licenses.getInfo&api_key=[取得したキー]

実行結果は以下の通りです。

<rsp stat="ok">
<licenses>
  <license id="0" name="All Rights Reserved" url="" /> 
  <license id="4" name="Attribution License" 
  url="http://creativecommons.org/licenses/by/2.0/" /> 
  <license id="6" name="Attribution-NoDerivs License" 
  url="http://creativecommons.org/licenses/by-nd/2.0/" /> 
  <license id="3" name="Attribution-NonCommercial-NoDerivs License" 
  url="http://creativecommons.org/licenses/by-nc-nd/2.0/" /> 
  <license id="2" name="Attribution-NonCommercial License" 
  url="http://creativecommons.org/licenses/by-nc/2.0/" /> 
  <license id="1" name="Attribution-NonCommercial-ShareAlike License" 
  url="http://creativecommons.org/licenses/by-nc-sa/2.0/" /> 
  <license id="5" name="Attribution-ShareAlike License" 
  url="http://creativecommons.org/licenses/by-sa/2.0/" /> 
</licenses>
</rsp>

実行結果より、id=1は「all rights reserved(無断複写・転載を禁じます)」ですので、これらの画像の利用(ホームページなどでの表示)は著作権侵害にあたってしまいます。
また、残りのid(1,2,3,4,5,6)はクリエイティブ・コモンズライセンスである事がわかります。
(*前回の記事を参考にしてください。)

最初に挙げたリクエスト例でlicenseを指定しないと、id=1の「all rights reserved」の画像まで取得してしまいますので、license=1,2,3,4,5,6のオプション指定が必要な訳が理解して頂けたかと思います。

コメントを投稿する
名前 : 
URL : 
 *入力文字数は全角700文字までです。
おすすめPHP入門書