python获取本地位置和天气

来源:互联网 发布:js shift 多选 编辑:程序博客网 时间:2024/05/16 06:26

python获取本地位置和天气

觉得最大的难点就是如何将汉字转换成拼音,这是我的网盘下载地址:点击打开链接 

#encoding=gbkimport urllibimport sysimport reimport pinyincity_info=urllib.urlopen( 'http://pv.sohu.com/cityjson').read()print city_info   #看输出结构addr=city_info.split('=')[1].split(',')[2].split('"')[3] #取出地址信息open('nj.txt','w').write(addr)pinyin = pinyin.Pinyin(file_path='./nj.txt')pinyin.label_chinese()   #将地址转换成拼音,写入文件f=open('nj.txt').read()print f     #看输出地址拼音结构provice=f.split('sheng',1)[0].replace(' ','')    #获取省份city=f.split('shi')[0].split('sheng')[1].strip().replace(' ','') #获取城市url='http://qq.ip138.com/weather/%s/%s.htm'%(provice,city)#分析url可知某省某市的天气url即为上面格式wea_info=urllib.urlopen(url).read()tianqi_pattern='alt="(.+?)"'tianqi=re.findall(tianqi_pattern, wea_info)  #获取天气信息wendu_pattern='<td>([-]?\d{1,2}.+)</td>'wendu=re.findall(wendu_pattern, wea_info)  #获取温度信息wind_pattern='<td>(\W+\d{1,2}.+)</td>'wind=re.findall(wind_pattern, wea_info)   #获取风向信息print '位置:',addrprint '天气:',tianqi[0]  #当天天气,明天天气即为tianqi[1],最多获取6天天气print '温度:',wendu[0]   #当天温度print '风向:',wind[0]    #当天风向


上面import pinyin就是上面给的链接下载下来的代码。

运行结果:

var returnCitySN = {"cip": "122.96.155.107", "cid": "320100", "cname": "江苏省南京市"};所在位置: 江苏省南京市天气: 阴温度: 3℃风向: 东北风4-5级



原创粉丝点击