码迷,mamicode.com
首页 > 编程语言 > 详细

使用python调用和风天气API查询当前天气信息

时间:2017-07-12 16:19:20      阅读:1086      评论:0      收藏:0      [点我收藏+]

标签:turn   nts   城市   调用   城市名称   stat   color   beijing   tps   

和风天气网址: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查询当前天气信息

标签:turn   nts   城市   调用   城市名称   stat   color   beijing   tps   

原文地址:http://www.cnblogs.com/cerberus43/p/7155855.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!