本に書いてあるようにはできなかった。
#!/usr/bin/env python # -*- coding: utf-8 -*- # Prints the weather for a location from the command line import json import requests import sys import pprint def main(): # Compute location from command line arguments. if len(sys.argv) < 2: print('Usage: quickWeather.py location') sys.exit() #location = ' '.join(sys.argv[1:]) # Download the Json data from OpenWeatherMap.org's API. url = 'http://weather.livedoor.com/forecast/webservice/json/v1?city=400040' # 久留米 print(url) response = requests.get(url) response.raise_for_status() # Load JSON data into a python variable. weatherData = json.loads(response.text) # Print weather descriptions w = weatherData['forecasts'] location = weatherData['location']['city'] print(f'場所 : {location}') for i in range(3): date = w[i]['dateLabel'] telop = w[i]['telop'] print(f'{date} : {telop}') if __name__ == '__main__': main()
OpenwetherMapをうまく扱えなかったので
Livedoor Weather Web Service / LWWS
で代用した。
改善点
・IDを自動で設定し入力。
例えば、 北海道と入力すると、対応するIDを見つけて、urlに代入する。
・tkinterなどを使ってGUIを作り、入力しやすくする。