Google Weather APIは今日見つけたものです。最近開発しているPlurk-botに天気を調べる機能を追加したいと思い、天気情報を取得する方法をネットで探していました。当初は、中央気象局のWebページを読み込んで、そこにあるデータを解析するつもりでした。しかし、GoogleとYahooの両方が天気のAPIを提供していることがわかりました。その中で私は、Google Weather APIのほうが気に入りました。戻り値がXML形式で解析しやすいからです。一方、Yahooは HTML を返してきます……。また、Google Weather APIでは都市名を直接指定する機能もあります。たとえば台北市の天気を調べたいときは、APIに「Taipei」をそのまま渡せばOKです。一方、Yahooの天気APIはそれほど簡単ではありません。都市のコードを入力する必要があるため、Yahoo APIを使うには、事前に調べたい都市のコードを知っておく必要があります。

Google Weather APIの特徴

  • 都市名(中国語・英語どちらでも可)で検索できる
  • 緯度・経度で検索できる
  • 1週間分の最高気温、最低気温、雲の状況などのデータを返す
  • 戻り値はXML形式で、エンコーディングはBig5

Google Weather APIの形式

http://www.google.com/ig/api?hl=zh-tw&weather=city_name

city_nameの部分には、検索したい都市名、または緯度・経度を入力できます。

例:台北市の天気を調べる

http://www.google.com/ig/api?hl=zh-tw&weather=Taipei

PHPの例

サンプルファイルのダウンロード先:Xun6 |4Shared | Box.net