GASで今後の天気予報を取得したい
以前、現時点の天気予報をAPIを使用して取得してみました。
アカウントの登録やAPIキーの取得方法は以下をご確認ください。
使用するWeb APIは前回と同じく
openweathermapとなります。
コード
今回のコードは以下になります。
大阪の現時点~9時間後までの気温を取得してみます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
function OpenWetherApi2() { let CityName = "Osaka,JP" let APIKey = "自身のAPIキー" // URL let URL = Utilities.formatString("https://api.openweathermap.org/data/2.5/forecast?q=%s&appid=%s&lang=ja&units=metric",CityName,APIKey) //FetchApp関数を使用してデータをGETする let getdata = UrlFetchApp.fetch(URL).getContentText(); //getdataをparseする let json_getdata = JSON.parse(getdata); console.log("時間0 = " + json_getdata['list'][0]['dt_txt']) console.log("気温0 = " + json_getdata['list'][0]['main']['temp']) console.log("時間1 = " + json_getdata['list'][1]['dt_txt']) console.log("気温1 = " + json_getdata['list'][1]['main']['temp']) console.log("時間2 = " + json_getdata['list'][2]['dt_txt']) console.log("気温2 = " + json_getdata['list'][2]['main']['temp']) console.log("時間3 = " + json_getdata['list'][3]['dt_txt']) console.log("気温3 = " + json_getdata['list'][3]['main']['temp']) } |
コードの実行結果と解説
実行結果は以下となりました。
json_getdata[‘list’][0][‘dt_txt’]
へは最初に取得した時間
json_getdata[‘list’][0][‘main’][‘temp’]
へは最初に取得した天気
がそれぞれ格納され、配列を+1する毎に3時間後のデータが入っています。
まとめ
・openweathermapのAPIを使用すれば数時間~数日後の天気予報が取得できる
・配列で返ってくるのでfor文で回せば効率的にデータを取得できる
今回はforを使用せず固定の数字を入れたので少し見づらくなりましたw
次回は数日後までの天気予報をforを使用して取得してみたいと思います。
以上です。
最後までお読みいただきありがとうございました!