LoginSignup
1
0

More than 1 year has passed since last update.

GASで気象庁のAPIから3日間のデータを取得する

Posted at

気象庁のデータ閲覧

・下記のURLにてブラウザ上で天気を確認することができます。
https://www.jma.go.jp/bosai/forecast/#area_type=class20s&area_code=1320400

json形式での取得

・今回はGoogleAppScript上で見たいため、json形式を指定すると下記のURLになります。
https://www.jma.go.jp/bosai/forecast/data/overview_forecast/[エリアコード].json
・エリア一覧は下記から参照できます。
https://www.jma.go.jp/bosai/common/const/area.json

エリア一覧をGoogleAppScript上で見る場合

areaCode.gs
function areaCode() {
  // 地方一覧を知りたい場合
  var url = "https://www.jma.go.jp/bosai/common/const/area.json";
  var json = UrlFetchApp.fetch(url).getContentText();
  var jsonObject = JSON.parse(json);
  Logger.log(jsonObject);
}

3日分の天気予報を取得する

今回は東京地方のみを取得してみます。
そのため、エリアは130000を指定しています。

weatherForecast.gs
function weatherForecast() {
  var baseUrl = "https://www.jma.go.jp/bosai/forecast/data/forecast/";
  var areaCode = "130000.json";
  var json = UrlFetchApp.fetch(baseUrl + areaCode).getContentText();
  var jsonObject = JSON.parse(json);
  for(var i=0; i<jsonObject[0].timeSeries.length; i++){
    const date = new Date(jsonObject[0].timeSeries[0].timeDefines[i]);
    var dayStr = Utilities.formatDate(date, 'JST', 'yyyy-MM-dd');
    Logger.log(dayStr);
    Logger.log(jsonObject[0].timeSeries[0].areas[i].weathers);
  }
}

実行をすると下記が出力されます

17:58:27	お知らせ	実行開始
17:58:28	情報	2022-05-25
17:58:28	情報	[晴れ 夜 くもり 所により 雨 で 雷を伴う, くもり 昼前 まで 時々 晴れ, くもり 時々 雨]
17:58:28	情報	2022-05-26
17:58:28	情報	[晴れ 夜 くもり, くもり 昼過ぎ 晴れ, くもり 時々 雨]
17:58:28	情報	2022-05-27
17:58:28	情報	[くもり 所により 夕方 雨, くもり, くもり 時々 雨]
17:58:28	お知らせ	実行完了

また当日の詳しい天気予報をテキストで取得したい場合は、baseUrlを下記に変更してみてください。
https://www.jma.go.jp/bosai/forecast/data/overview_forecast/

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0