Yahoo!の気象情報APIを使ってPythonで降雨予報を取得してみました。
気象情報APIの概要は、指定した緯度経度の雨の強さを取得できるAPIで、現在時刻の降水強度実測値から、60分後までの降水強度予測値を取得できます。となっています。
また、利用制限は24時間中1アプリケーションIDにつき50000件のリクエストが上限となっています。
Yahoo!の気象情報APIについては下記に内容が記載されています。
また、Yahoo!のAPIを使用する際には、IDのほかにアプリケーションIDの登録が必要になります。
今回は緯度経度とデータ形式(JSON)とID以外はいじらずにデフォルトの情報を取得しました。
降雨予報を取得した場所はプログラム作成時に天気が雨だった高知県高知市にしました。(住んでいるわけではありません(笑))
経度と緯度については、googlemapなどの地図サイトにアクセスして、調べたい位置をクリックするとURLに記載されています。大抵APIに記述する順番と逆になっているので注意してください。

また、気象庁の天気予報を取得した時と同様プログラム作成時にはJSONのファイル読む必要があるので、リーダーが必要になります。
私の場合はchromeの拡張機能のJSON Viewerをインストールしてjsonファイルを読めるようにしました。
JSON Viewerをインストールをしたら、拡張機能の一覧を示すページ(?)のJSON Viewerの拡張機能を管理をクリックします。

管理ページへ移動したら、ファイルのURLへのアクセスを許可するをONにします。

高知県高知市の情報を取得したときのJSONは下記のようになっていました。

準備ができたらいよいよプログラムを作成していきます。
今回データ取得の方法は気象庁の天気予報を取得したときにベースとさせていたマイナビのプログラムをベースに書き換えを行いました。
参考にしたサイト
プログラム

実行結果

2022/07/31追記
さらに上記のプログラムをTkinterを使ってGUI表示にしてみました。
Tkinterについてはこちらもマイナビのサイトを参考にさせてもらいつつ作成しました。
なお、Anacondaでなくthonnyを使ってプログラムを作成したので、参考にしたのはコードのみとなります。
プログラム

実行結果

今後、さらにプログラムの修正を行って、一個前の情報が0(mm/h)から他の数値になったときにお知らせするなどしたら面白いかもれません。
ความคิดเห็น