初めに
ダッシュボード作成のために、天気予報をAPIにて取得する。
1年くらい前の気象庁のHPが大幅リニューアルし、非公式ながらAPIが発見された。そのAPIを用い「天気予報」を取得したいと思う。気象庁 にて使用されているAPIを使用。詳しいことは気象庁ホームページ防災気象情報のURL構造を参考に作成した。
⇒PHPを用い、HP等で表示させる用途を想定
※非公式のため、無保証。アップデート等により使用不可になる可能性もあり。
※政府標準利用規約(PDF)に準拠して利用すること
環境
- Windows10
- PHP 8.0.6
データの詳細
エリアのコード(pathCode) 東京は130000
http://www.jma.go.jp/bosai/common/const/area.json
コンテンツの種別は
http://www.jma.go.jp/bosai/common/const/contents.json
テロップ番号
https://plaza.rakuten.co.jp/rabbit77/3000/
コード
jma_weather_api.php
<?php
//気象庁のAPIにて気象情報取得
$url = "https://www.jma.go.jp/bosai/forecast/data/forecast/{エリアコード}.json";
$weather_json = file_get_contents($url);
$weather_array = json_decode($weather_json, true);
$date = $weather_array["0"]["timeSeries"]["0"]["timeDefines"]["0"];
$jma_weather = $weather_array["0"]["timeSeries"]["0"]["areas"]["0"]["weathers"]["0"];
$jma_rainfall = $weather_array["Feature"]["0"]["Property"]["WeatherList"]["Weather"]["0"]["Rainfall"];
echo "日時:" . $date . "\n";
echo "今日の天気:" . $jma_weather. "\n";
echo "雨量:" . $jma_rainfall. "\n";
終わりに
非公式とは言え、気象庁の情報を簡単に使用できるのは便利ですね。
HPに気象庁の天気予報の掲載ができます。
参考サイト