タダで天気のYAML形式データを生成Rubyワンライナー - Bye Bye Mooreという記事にて、
お天気を取得するワンライナーを書きました。
...が、jqというコマンドを導入するともうJsonまわりで別言語に頼る必要がなくなります
導入
$ brew install jq ==> Downloading http://stedolan.github.io/jq/download/source/jq-1.3.tar.gz ######################################################################## 100.0% ==> ./configure ==> make 🍺 /usr/local/Cellar/jq/1.3: 7 files, 236K, built in 12 seconds
$ curl http://weather.livedoor.com/forecast/webservice/json/v1?city=130010 | jq "." % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 7793 0 7793 0 0 19668 0 --:--:-- --:--:-- --:--:-- 19679 { "description": { "publicTime": "2014-01-31T22:43:00+0900", "text": " 日本付近は、日本海中部の移動性高気圧に覆われています。\n\n【関東甲信地方】\n 現在、関東甲信地方は、おおむね晴れています。\n\n 今夜は、移動性高気圧に覆われて、関東甲信地方はおおむね晴れるでしょ\nう。\n\n 明日は、移動性高気圧が本州付近から日本の東に移動する見込みです。関\n東甲信地方は、おおむね晴れますが、次第に雲が広がりやすくなる見込みで\nす。\n\n 関東近海では、今夜から明日にかけて波が高いでしょう。船舶は高波に注\n意してください。\n\n【東京地方】\n 今夜は、晴れるでしょう。\n 明日は、晴れますが、昼前から時々曇る見込みです。" }, "title": "東京都 東京 の天気", "copyright": { ... }, { "name": "奥多摩町", "link": "http://weather.livedoor.com/area/forecast/1330800" } ] }
この通りです。これはタマゲタなぁ...
東京の天気を取得する
$ curl http://weather.livedoor.com/forecast/webservice/json/v1?city=130010 | jq -c ".forecasts[] | {date,dateLabel, telop}"
% Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 7793 0 7793 0 0 25713 0 --:--:-- --:--:-- --:--:-- 25634 {"telop":"晴れ","dateLabel":"今日","date":"2014-01-31"} {"telop":"晴のち曇","dateLabel":"明日","date":"2014-02-01"} {"telop":"曇時々雨","dateLabel":"明後日","date":"2014-02-02"}