ラズパイでお天気情報


ラズパイでお天気情報を取得してみます。

予報に関してはLiveDoor Weather Haks

データに関してはOpenWeatherMap

を使ってみます。

この手の情報は一次ソースとしてとっても大事。

予報については「明日晴れるの?雨降る?…..」程度が分かればいいので、LiveDoorで十分。

データについては「気温や湿度、気圧…」などの細かいとこが知りたいのでOpenWeatherMapを使います。

データはDBに保存して、後で解析に使います。

気象病ってのが世の中にはあるそうです。

日記に体調などを(できれば時刻と一緒に)都度記述しておけば、気候の傾向と体調の関係を把握できるかもしれません(^^)。

また、J.リーグの公式記録(天候別勝敗表)によれば…..

雨模様の試合でガンバ大阪の2005~2018の記録は、80試合、27勝27分26敗。きれいに分散してます。

負けない率は、67.5%です。まぁ、勝てない率も同じくらいなんですけど……。

一番勝率がいいのは「雨のち曇」の場合で7勝2分2敗。

まぁ、ゲームの結果を予測しようなんて考えると、パラメータの数がアホほど多くなるのを覚悟せねば…..。きっとシャビの頭の中にはゲームを分析・予測する変数が常人の何十倍もあったんじゃない?!

 

 


LiveDoor Weather Haks

商用利用は不可というだけで、回数制限などは特に無いようです。

地域IDは全国の地点定義表から取得

Python3

以下は大阪の場合

 

 

 

 


OpenWeatherMap

無料版と有料版があります(使うのは当然無料版)

無料版では1分間に60リクエストまでと制限がありますが、そんなに頻繁に使う理由がないです。

無料版ではデータの種類も制限されます…..がこのくらいから始めてみます(相関に問題があれば別のパラメーターを探してみませう)。

気温・気圧・湿度・風速・風向・最高気温・最低気温・雲量など。

 

都市名と緯度・経度でデータ取得できます。緯度・経度は直近の観測場所のデータが採用されます。

どういう都市名が使えるかは都市ID(JSON)で調べられます。

APIキーを取得しておく必要があります。

 

都市名の場合:?q=都市名,jp  <-日本

緯度・経度の場合:?lat=34.802948&lon=135.537488

 

Python3で取得
以下は大阪市の場合

OpenWeatherMapではdescriptionは英語表現なのでいまいち分かりづらい。

対照表:空模様

風向も0~360で表記されるのでピンときません。

風向き範囲

DBから検索する際、変換しとくとわかりやすいです。

 

 

データはローカルにDB(例:SQLite)に保存しておきます。

最低2年分くらいは欲しいです。

cronに設定しておきます(60分間隔で保存)

適当にPythonコード(set.py)を作っておいて

$crontab -e

*/60 * * * * /home/pi/weather_report/set.py

WisteriaHillではこんな具合にデータ保存中。

2番目のカラムには保存時のタイムスタンプを設定。

 

 


お天気データと日記の記述の関連を解析

日記と言っても音声認識を使ったメモのようなもので十分。

Google Keep(Android)に保存してみます。

こんな感じで保存されます。

 

PythonでKeepからデータを検索する場合はこちら

 


 

Be the first to comment

Leave a Reply

Your email address will not be published.


*