0784デフォルトの名無しさん
2018/06/02(土) 21:40:26.28ID:MGrdFwMf#encoding:utf-8
import json, urllib.request, urllib.error, urllib.parse, sys
try: citycode = sys.argv[1]
except: citycode = '400040'
resp = urllib.request.urlopen('http://weather.livedoor.com/forecast/webservice/json/v1?city=%s'%citycode).read()
resp = json.loads(resp)
print(resp['title'])
print('')
for forecast in resp['forecasts']:
print(forecast['dateLabel'] + ' ('+forecast['date']+')')
print('天気:', forecast['telop'])
print('最高気温:', forecast['temperature']['max'])
print('最低気温:', forecast['temperature']['min'])
print('')
ライブドアの天気を取得するスクリプトです。
気温は以下のようにやりたいんですが、気温のデータがない場合(noneとなっている)、max(min)の下のcelsiusもないので、エラーになってしまいます。
その場合は、どのように書くといいんでしょうか?
print('最高気温:', forecast['temperature']['max']['celsius'])
print('最低気温:', forecast['temperature']['min']['celsius'])