2014年11月28日金曜日

groovyから気象情報APIを使用して、経度・緯度から気象情報を求める

groovyから気象情報APIを使用して、経度・緯度から気象情報を求めるには、以下のようなコードを実行します。

サンプルコード
@Grab(group='org.apache.httpcomponents', module='httpclient', version='4.3.5')
import org.apache.http.client.methods.*
import org.apache.http.impl.client.*
import org.apache.http.message.*
import groovy.json.*

def appid = "your-app-id"
// 緯度経度
def coordinates = "139.75363355,35.69400229"

def httpclient = new DefaultHttpClient()
def method = new HttpGet("http://weather.olp.yahooapis.jp/v1/place?appid=${appid}&output=json&coordinates=${coordinates}")
def response = httpclient.execute(method)
println response.getStatusLine().getStatusCode()

def json = new JsonSlurper().parseText(response.getEntity().getContent().text)
// タイプ、日時、降水強度(mm/h)
json.Feature.Property.WeatherList.Weather[0].each {
  println "${it.Type}:${it.Date}:${it.Rainfall}"
}
関連情報
YOLP(地図):気象情報API - Yahoo!デベロッパーネットワーク

0 件のコメント:

コメントを投稿