Python獲取本地位置和天氣


 

[python]  view plain  copy
 
  1. #encoding=gbk  
  2. import urllib  
  3. import sys  
  4. import re  
  5. import pinyin  
  6. city_info=urllib.urlopen( 'http://pv.sohu.com/cityjson').read()  
  7. print city_info   #看輸出結構  
  8. addr=city_info.split('=')[1].split(',')[2].split('"')[3] #取出地址信息  
  9.   
  10. open('nj.txt','w').write(addr)  
  11. pinyin = pinyin.Pinyin(file_path='./nj.txt')  
  12. pinyin.label_chinese()   #將地址轉換成拼音,寫入文件  
  13.   
  14. f=open('nj.txt').read()  
  15. print f     #看輸出地址拼音結構  
  16. provice=f.split('sheng',1)[0].replace(' ','')    #獲取省份  
  17. city=f.split('shi')[0].split('sheng')[1].strip().replace(' ','') #獲取城市  
  18. url='http://qq.ip138.com/weather/%s/%s.htm'%(provice,city)  
  19. #分析url可知某省某市的天氣url即為上面格式  
  20. wea_info=urllib.urlopen(url).read()  
  21. tianqi_pattern='alt="(.+?)"'  
  22. tianqi=re.findall(tianqi_pattern, wea_info)  #獲取天氣信息  
  23.   
  24. wendu_pattern='<td>([-]?\d{1,2}.+)</td>'  
  25. wendu=re.findall(wendu_pattern, wea_info)  #獲取溫度信息  
  26.   
  27. wind_pattern='<td>(\W+\d{1,2}.+)</td>'  
  28. wind=re.findall(wind_pattern, wea_info)   #獲取風向信息  
  29.   
  30. print '位置:',addr  
  31. print '天氣:',tianqi[0]  #當天天氣,明天天氣即為tianqi[1],最多獲取6天天氣  
  32. print '溫度:',wendu[0]   #當天溫度  
  33. print '風向:',wind[0]    #當天風向  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM