您的位置:首页 > 编程语言 > Python开发

Python 中json的应用实例----天气预报

2018-01-25 19:17 567 查看
# 天气预报
# 引入requests
import  requests
# 引入python中内置的包json,用来解析和生成json数据
import  json

city = input('请输入要查询的城市名称:')

# url 统一资源定位符
# cmd 打开命令行工具  输入 pip install requests

url = 'http://api.map.baidu.com/telematics/v3/weather?location= %s &output=json&ak=TueGDhCvwI6fOrQnLM0qmXxY9N0OkOiQ&callback=?'%city

# 使用requests发起请求,接受返回的结果

rs = requests.get(url)  #rs:<Response [200]>

# 使用loads函数,将json字符串转换为python的字典或列表

rs_dict = json.loads(rs.text)
# 取出error
error_code = rs_dict['error']
# 如果取出的error为0,表示数据正常,否则没有查询到结果
if error_code == 0:
# 从字典中取出数据
results = rs_dict['results']
# 根据索引取出城市天气信息字典
info_dict = results[0]
# 根据字典的key,取出城市名称
city_name = info_dict['currentCity']
# 取出pm值
pm25 = info_dict['pm25']
print ('当前城市: %s pm值: %s'%(city_name,pm25))
# 取出天气信息列表
weather_data = info_dict['weather_data']
# for 循环取出每一天天气的小字典
for weather_dict in weather_data:
# 取出日期,天气,风级,温度
date = weather_dict['date']
weather = weather_dict['weather']
wind = weather_dict['wind']
temperature = weather_dict['temperature']
print ('%s %s %s %s'%(date,weather,wind,          temperature))

else:
print ('没有查询到天气信息')
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: