Py:利用pickle模块和API天气接口实现输入城市得到该城市的天气预报

输出结果

https://img-blog.csdn.net/20180310232620309?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfNDExODU4Njg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70


实现代码

# -*- coding: utf-8 -*-

'''

Created on 2017年3月10日

@author: niu

'''

import urllib.request

import json

import pickle

pickle_file=open("city_data.pkl","rb")

city=pickle.load(pickle_file)

cityname = input("你想查询那个城市的天气?")  

citycode=""  

 

try:  

   citycode =city[cityname]  

except:  

   print ("not Found")  

if citycode:  

   try:  

       url= "http://www.weather.com.cn/data/cityinfo/"+citycode+".html"#构造网址  

       content = urllib.request.urlopen(url).read()#读取网页源代码  

       data =json.loads(content)#使用json库将字符转化为字典  

       #print type(data)  

       #print (content)  

       res =data["weatherinfo"]#获取字典  

       str_temp=("%s :%s~%s")%(res["weather"],res["temp1"],res["temp2"])#格式化字符  

       print (str_temp)#输出天气信息  

   except:  

       print ("Not Found!!" )


上一篇:Ubuntu下pycharm无法输入中文


下一篇:React报错:TypeError: Cannot call a class as a function