Pythonの勉強をしています。
今回はAPIを利用して日本各地の気象情報を取得してみます。
Livedoor 天気情報から天気を取得する
次の通りコードを記述します。
1 2 3 4 5 6 7 8 9 10 11 12 |
import json import requests from pprint import pprint url ="http://weather.livedoor.com/forecast/webservice/json/v1?city={Key}" #文末の{Key}の部分で地域を指定します。 url = url.format(Key="220010") #数字の部分を変えることで各地の情報を取得することができます。今回は静岡県を指定。 data=requests.get(url).json() #json形式で取り込んで print(data["description"]) #表示します |
実行結果はこちら。
ここからは補足です。
Livedoor天気情報では、json形式でデータが提供されています。
そのため、json形式のデータを扱うことができるよう、
jsonモジュールをインポートしています。
ちなみにpprintを利用すると、データ構造が見やすい形で出力されます。
1 |
pprint(data["description"]) |
先ほどのコードの最後の行をpprintにして実行してみると次のような実行結果になりました。
改行されていたり、少し見やすくなっていることがわかります。
地域はIDを指定することによって選ぶことができます。
今回は静岡県を指定したのですが、他の地域はこちらから確認できます。
「全国地点定義表」
地域名とIDは1対1で対応しているので、
使用者に地域名を入力してもらい、
地域名をIDへ変換したうえでKeyへformat関数を利用してKeyへ代入することで、
わざわざ定義表を見なくても地域名を入力するだけで表示できないかと思いましたが、
今回は一旦ここまでとしています。
参考
今回もこちらの本を参考にしています。
記事ではお天気Webサービスを利用していますが、
こちらの本ではOpenWeatherMapというサイトのAPIを利用しています。
内容がとてもシンプルでわかりやすく、
自宅で過ごしているときに勉強してみるとスキルアップにつながります。
まとめ
今回はPythonでスクレイピングをしてみました。
天気予報に限らず、様々なWeb上の情報を取得することができます。
他にもPythonの記事を書いています。
コメント