OpenWeatherのAPIを使ってみたい
今日は若干雨でした。天気予報がいつでも見れると良いんですけどね。
というわけで天気予報のAPIとして去年までlivedoorのWeather hackがありましたが、2020年7月にサービス終了してしまいました。
これからも同じようなことをするには別の天気予報APIを探す必要があります。
今回 [OpenWeatherMap]というサイトにて無料で天気のAPIを使えるとのことだったので、早速使ってみました。
こちらで無料会員登録をすると、APIKeyが発行されます。それを使えばOpenWeatherMap上のAPIを使えるようです。
また、今回こちらのページも参考にさせていただきました。
とりあえず表示させることができたコードはこちらです。
import requests
import json
city = "Tokyo"
API_KEY = "#ここに自分のコードを入れる"
url = 'http://api.openweathermap.org/data/2.5/weather?q=Tokyo&APPID=#自分のAPI_KEY'
response = requests.get(url)
data = response.json()
jsontext = json.dumps(data,indent=4)
print(jsontext)
出力はこちら
{
"coord": {
"lon": 139.6917,
"lat": 35.6895
},
"weather": [
{
"id": 500,
"main": "Rain",
"description": "light rain",
"icon": "10n"
}
],
"base": "stations",
"main": {
"temp": 287.64,
"feels_like": 284.86,
"temp_min": 287.04,
"temp_max": 288.15,
"pressure": 1015,
"humidity": 82
},
"visibility": 10000,
"wind": {
"speed": 4.63,
"deg": 170
},
"rain": {
"1h": 0.23
},
"clouds": {
"all": 75
},
"dt": 1616666220,
"sys": {
"type": 1,
"id": 8074,
"country": "JP",
"sunrise": 1616618287,
"sunset": 1616662579
},
"timezone": 32400,
"id": 1850144,
"name": "Tokyo",
"cod": 200
}
上記は3/25日時点のものですが、後日同じコードを叩くと違う結果になります。
{
"coord": {
"lon": 139.6917,
"lat": 35.6895
},
"weather": [
{
"id": 800,
"main": "Clear",
"description": "clear sky",
"icon": "01d"
}
],
"base": "stations",
"main": {
"temp": 286.26,
"feels_like": 284.93,
"temp_min": 285.93,
"temp_max": 287.04,
"pressure": 1017,
"humidity": 50
},
"visibility": 10000,
"wind": {
"speed": 3.6,
"deg": 60
},
"clouds": {
"all": 0
},
"dt": 1617697980,
"sys": {
"type": 1,
"id": 8063,
"country": "JP",
"sunrise": 1617654057,
"sunset": 1617699965
},
"timezone": 32400,
"id": 1850144,
"name": "Tokyo",
"cod": 200
}
プロセスは終了コード 0 で完了しました
初心者の僕はあれこれ教えてもらいながらできました汗
weather main のところが、light rainになったり、clear になったりと、その日の天気を表していることがわかります。
それではこれにコードを足して、、とその前に、僕はまずPycharm CEにrequestsモジュールを足すところでつまづきました。
どんだけ最初だ!!と突っ込みたくなるところですが、一応メモとして残します。
1. Pycharm CEを開く→任意のプロジェクトを開く→環境設定→プロジェクト[プロジェクトの名前]→Python インタープリター を開く!
2. 右上の歯車マークをクリックし「追加」を選択
3. 「新しい環境」を選び、空のファイルを用意して、そこに新しい環境を作る。
これで新しく仮想環境を作ることができます。
次にモジュールを追加します。
1. 同じく設定→プロジェクト[プロジェクトの名前]→Python インタープリター を開く
2. 左下の「+」マークを押す
3. 任意のモジュール名を入れ、適したものをインストールすれば使えるようになる。
例えばrequestsなら、いろんな「〜requests〜」が出てくるが、素直に過不足なく「requests」と書いているものをインストールすると良いです。
それを知らなかったため最初ははまりました。
上記ができれば、あとは最初のコードを入れればAPIが使えます!!
次は、そのAPIを利用してIf文であれこれ表示させたいと思います。つづく