はじめに
前回の記事にて、天気情報取得にAPIキーが必要だったため、APIキーが不要な天気情報取得をやってみました。
RubyでOpenWeatherMapを使って天気を取得してみた
環境
macOS Mojave(10.14.4)
Livedoor Weather Web Service
こちらで公開されています。
[お天気Webサービス仕様]
(http://weather.livedoor.com/weather_hacks/webservice)
このサイト内のURLと地域別IDを使用することで、以下情報をJSON形式で取得できます。
お天気Webサービス(Livedoor Weather Web Service / LWWS)は、現在全国142カ所の今日・明日・あさっての天気予報・予想気温と都道府県の天気概況情報を提供しています。
取得処理
今回も東京の天気情報取得をやってみます。
地域別IDは以下サイトにまとめられていたので、そこから参照します。
livedoorお天気webサービス地域ID一覧
上記サイトを見ると東京のIDは130010のようです。
そのため東京の天気情報取得には以下URLを使用します。
http://weather.livedoor.com/forecast/webservice/json/v1?city=130010
RubyでのJSON取得コードは以下になります。
require 'open-uri'
require 'json'
response = open(url)
@parse_text = JSON.parse(response.read)
puts JSON.pretty_generate(@parse_text)
取得結果
取得できた東京の天気情報がこちらです。
※取得日:2019/5/7
{
"pinpointLocations": [
{
"link": "http://weather.livedoor.com/area/forecast/1310100",
"name": "千代田区"
},
・・・略・・・
],
"link": "http://weather.livedoor.com/area/forecast/130010",
"forecasts": [
{
"dateLabel": "今日",
"telop": "曇時々晴",
"date": "2019-05-07",
"temperature": {
"min": null,
"max": {
"celsius": "19",
"fahrenheit": "66.2"
}
},
"image": {
"width": 50,
"url": "http://weather.livedoor.com/img/icon/9.gif",
"title": "曇時々晴",
"height": 31
}
},
・・・略・・・
}
],
"location": {
"city": "東京",
"area": "関東",
"prefecture": "東京都"
},
"publicTime": "2019-05-07T05:00:00+0900",
"copyright": {
"provider": [
{
"link": "http://tenki.jp/",
"name": "日本気象協会"
}
],
・・・略・・・
取得ができたので、必要な部分だけ取り出して、今日の天気を出すようにしました。
ついでに関東地方の地域IDがある地点の天気を取得してみました。
City: 東京, Weather: 曇時々晴
City: 大島, Weather: 曇時々晴
City: 八丈島, Weather: 曇時々晴
City: 父島, Weather: 曇のち雨
City: 横浜, Weather: 曇時々晴
City: 小田原, Weather: 曇時々晴
City: さいたま, Weather: 晴時々曇
City: 熊谷, Weather: 晴時々曇
City: 秩父, Weather: 晴時々曇
City: 千葉, Weather: 曇時々晴
City: 銚子, Weather: 曇時々晴
City: 館山, Weather: 曇時々晴
City: 水戸, Weather: 曇時々晴
City: 土浦, Weather: 曇時々晴
City: 宇都宮, Weather: 曇のち晴
City: 大田原, Weather: 曇のち晴
City: 前橋, Weather: 晴時々曇
City: みなかみ, Weather: 晴時々曇
City: 甲府, Weather: 晴時々曇
City: 河口湖, Weather: 晴時々曇
比較のため、気象庁の天気と比較してみます。
気象庁
※前回はヤフー天気を比較対象に挙げましたが、精度が公表されていないようでした。
そのため精度を公表している気象庁を選択しました。
天気予報の精度検証結果
おおー、あまり外れていないように見えますね。
まとめ
偶然近い結果になったのか分かりませんが、天気予報第2弾はなかなかよい結果でした。
明日、明後日の天気も出して比較すると、さらに面白そうですね。