koda-album

育児プログラマーの日々のざれごと

Panoramio APIを使ってみました

アプリケーション内で風景写真を使いたくて、Panoramio APIを使わせて頂きました。メモを残しておきます。

細かい利用規約などはありますが、ステキな風景写真を手軽に取得できるのでオススメです。

Panoramioとは

Panoramio(パノラミオ)はGoogle社の運営する地域情報が付加された無料写真共有サイトである。Panoramioにアップロードされた写真はGoogle EarthGoogle マップ上に表示される。ただし、Google EarthGoogle マップ上に表示される画像は位置情報を付けることや風景写真であることなど後述のいくつかの条件を満たすことが求められ、審査後数日で随時追加されている。このサイトの目的は、地域を訪れたユーザーが写真を掲載することにより、Google Earthのユーザーがより豊富な情報を得られるようにすることである。多くの言語に対応しており、日本語でも利用可能である。

Panoramio - Wikipedia

Panoramio APIについて

Panoramio - API. Display photos from Panoramio on your own website

詳しくは、上記の本家サイトで確認して頂きたいのですが、概要だけ載せておきますね。

APIの形

下記のフォーマットでURLアクセスすると、写真の情報が返却されます。パラメータ部分で写真の抽出条件を指定することができます。

http://www.panoramio.com/map/get_panoramas.php?{パラメータ}

パラメータ

パラメータとして指定できる項目は以下です。詳しくは本家サイトで確認してください。

  • 写真セットの抽出対象(set=)
  • 写真サイズ(size=)
  • 写真表示領域の最小経度(minx=)
  • 写真表示領域の最小緯度(miny=)
  • 写真表示領域の最大経度(maxx=)
  • 写真表示領域の最大経度(maxy=)
  • 表示する写真の範囲(from=,to=)
  • 地図フィルターの有無(mapfilter=)

パラメータ指定の例です。

http://www.panoramio.com/map/get_panoramas.php?set=public&from=0&to=20&minx=-180&miny=-90&maxx=180&maxy=90&size=medium&mapfilter=true

返却値

返却値はJSON形式です。以下に例を載せておきますが、詳しくは本家サイトで確認してください。

    {
      "count": 773840,"photos": [
        {
          "photo_id": 532693,
          "photo_title": "Wheatfield in afternoon light",
          "photo_url": "http://www.panoramio.com/photo/532693",
          "photo_file_url": "http://static2.bareka.com/photos/medium/532693.jpg",
          "longitude": 11.280727,
          "latitude": 59.643198,
          "width": 500,
          "height": 333,
          "upload_date": "22 January 2007",
          "owner_id": 39160,
          "owner_name": "Snemann",
          "owner_url": "http://www.panoramio.com/user/39160",
        },
        {
          "photo_id": 505229,
          "photo_title": "Etangs près de Dijon",
          "photo_url": "http://www.panoramio.com/photo/505229",
          "photo_file_url": "http://static2.bareka.com/photos/medium/505229.jpg",
          "longitude": 5.168552,
          "latitude": 47.312642,
          "width": 350,
          "height": 500,
          "upload_date": "20 January 2007",
          "owner_id": 78506,
          "owner_name": "Philippe Stoop",
          "owner_url": "http://www.panoramio.com/user/78506"
        }, ...
      ]
    }

利用規約

Webサイトやアプリで写真を表示するにあたり、いくつかの規約があります。以下にポイントを載せておきますが、詳しくは本家サイトで確認してください。

  • Panoramioという名称とロゴを掲載する。
  • 1ページに表示する写真数は50までとする。
  • 写真自体に、その写真ページのリンクを付ける。
  • 写真の下部に「Panoramio 写真は所有者の著作権により保護されています」と掲載する。
  • 中サイズ、元サイズの写真を使用した場合は、写真の下部か横にPanoramiaのロゴと撮影者名を掲載する。
  • 撮影者名には、撮影者のユーザページへのリンクを付ける。
  • 写真タイトルには、写真ページへのリンクを付ける。

参考にさせて頂いた記事

Web関連特集|PHP & JavaScript Room

Panoramio の表示( Google MAP API ) :WEB 職人