使用python调用和风天气API查询当前天气信息
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用python调用和风天气API查询当前天气信息相关的知识,希望对你有一定的参考价值。
和风天气网址:https://www.heweather.com/
注册后在控制台会有个人认证key
API帮助文档:https://www.heweather.com/documents/api/v5
#!/usr/bin/python #-*-coding:utf-8-*- #调用和风天气API查询当前天气信息 #2017/07/12 import json import urllib2 import os city=‘北京‘ #在和风天气注册后获得的key key=‘your key‘ city_name={‘北京‘:‘beijing‘,‘上海‘:‘shanghai‘} city_hname=city_name.get(city) #获取当前天气信息 def get_json(city): url=‘https://free-api.heweather.com/v5/now?city=‘+city_hname+‘&key=‘+key # print url html=urllib2.urlopen(url).read() return html # print html # f=open(city_hname+‘.txt‘,‘w‘) # f.write(html) # f.close #get_json(city) #解析json数据 #data=open(city_hname+‘.txt‘).readline() data=get_json(city) hjson=json.loads(data) basic_status=hjson[‘HeWeather5‘][0][‘basic‘] nowtq_status=hjson[‘HeWeather5‘][0][‘now‘] #print now #print now_status[‘cond‘][‘txt‘].encode(‘utf-8‘) #格式化输出城市信息 def basic(databasic): print ‘国家/城市名称:\t%s/%s‘%(databasic[‘cnty‘].encode(‘utf-8‘),databasic[‘city‘].encode(‘utf-8‘)) print ‘信息更新时间:\t%s‘%(databasic[‘update‘][‘loc‘].encode(‘utf-8‘)) #basic(basic_status) #格式化输出当前天气信息 def tqms(datanowtq): print ‘当前室外温度:\t%s度‘%(datanowtq[‘tmp‘].encode(‘utf-8‘)) #print ‘体感温度:\t%s‘%(datanowtq[‘fl‘].encode(‘utf-8‘)) print ‘天气描述:\t%s‘%(datanowtq[‘cond‘][‘txt‘].encode(‘utf-8‘)) print ‘相对湿度(%):\t‘+‘%s%%‘%(datanowtq[‘hum‘].encode(‘utf-8‘)) print ‘风力/风向:\t%s/%s级‘%(datanowtq[‘wind‘][‘dir‘].encode(‘utf-8‘),datanowtq[‘wind‘][‘sc‘].encode(‘utf-8‘)) print ‘能见度(km):\t%skm‘%(datanowtq[‘vis‘].encode(‘utf-8‘)) basic(basic_status) tqms(nowtq_status)
坑:
1.使用print格式化输出百分号的时候要使用%%,例:
>>> print ‘%d%%‘ % 23 23%
以上是关于使用python调用和风天气API查询当前天气信息的主要内容,如果未能解决你的问题,请参考以下文章