python实现自主查询实时天气


Posted in Python onJune 22, 2018

本文实例为大家分享了python实现自主查询实时天气的具体代码,供大家参考,具体内容如下

用到了urllib2 json  很简单的一个应用 如下

python实现自主查询实时天气

获取城市编号

#coding=utf-8 
import urllib2 
 
url1 = 'http://m.weather.com.cn/data3/city.xml' 
content1 = urllib2.urlopen(url1).read() 
provinces = content1.split(',') 
print content1 # 输出content1可以查看全部省份代码 
result = '' 
url = 'http://m.weather.com.cn/data3/city%s.xml' 
for p in provinces: 
  p_code = p.split('|')[0] 
  url2 = url % p_code 
  content2 = urllib2.urlopen(url2).read() # 输出content2可以查看此省份下所有城市代码 
  cities = content2.split(',') 
  print content2 
  for c in cities: 
    c_code = c.split('|')[0] 
    url3 = url % c_code 
    content3 = urllib2.urlopen(url3).read() 
    print content3 #content3是此城市下所有地区代码 
    districts = content3.split(',') 
    for d in districts: # 对于每个地区,我们把它的名字记录下来,然后再发送一次请求,得到它的最终代码: 
      d_pair = d.split('|') 
      d_code = d_pair[0] # 
      if 5 == len(d_code): 
        continue 
        temp=[d_code] 
        temp.insert(4,0) 
        d_code ="".join(temp) 
      name = d_pair[1] # 名字 
      url4 = url % d_code 
      content4 = urllib2.urlopen(url4).read() 
      print content4 
      code = content4.split('|')[1] 
      line = "%s:%s\n" % (name, code) 
      result += line 
      print name + ':' + code 
f = file('./city', 'w') 
f.write(result) 
f.close()

findweather

# -*- coding: utf-8 -*- 
import urllib2 
import json 
city = {} 
f =file('city','r') 
src = f.readlines() 
for line in src: 
  line = line.split('\n')[0] 
  name = line.split(':')[0] 
  code = line.split(':')[1] 
  city[name] = code 
cityname = raw_input('请输入你要查询的城市名称:\n') 
citycode = city.get(cityname) 
print cityname 
if citycode: 
  try: 
    url = ('http://www.weather.com.cn/data/cityinfo/%s.html' % citycode) 
    content = urllib2.urlopen(url).read() 
    data = json.loads(content) 
    result = data['weatherinfo'] 
    str_temp = ('%s\n%s ~ %s') % (result['weather'],result['temp1'],result['temp2']) 
    print str_temp 
  except: 
    print '查询失败' 
else: 
  print '没有找到该城市'

运行 findweather  即可。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python2.x和3.x下maketrans与translate函数使用上的不同
Apr 13 Python
python爬虫之百度API调用方法
Jun 11 Python
浅谈python jieba分词模块的基本用法
Nov 09 Python
python线程池(threadpool)模块使用笔记详解
Nov 17 Python
python中ASCII码字符与int之间的转换方法
Jul 09 Python
对python字典过滤条件的实例详解
Jan 22 Python
创建Django项目图文实例详解
Jun 06 Python
Python中*args和**kwargs的区别详解
Sep 17 Python
使用PyTorch将文件夹下的图片分为训练集和验证集实例
Jan 08 Python
pycharm新建Vue项目的方法步骤(图文)
Mar 04 Python
Django接收照片储存文件的实例代码
Mar 07 Python
python3实现Dijkstra算法最短路径的实现
May 12 Python
python实现定时提取实时日志程序
Jun 22 #Python
pandas 读取各种格式文件的方法
Jun 22 #Python
python使用turtle库绘制时钟
Mar 25 #Python
Python日期时间对象转换为字符串的实例
Jun 22 #Python
python pandas 对时间序列文件处理的实例
Jun 22 #Python
python使用turtle绘制分形树
Jun 22 #Python
python递归函数绘制分形树的方法
Jun 22 #Python
You might like
全国FM电台频率大全 - 14 江西省
2020/03/11 无线电
php封装好的人民币数值转中文大写类
2015/12/20 PHP
php str_replace替换指定次数的方法详解
2017/05/05 PHP
PHP性能分析工具xhprof的安装使用与注意事项
2017/12/19 PHP
javascript+css 网页每次加载不同样式的实现方法
2009/12/27 Javascript
一个轻量级的javascript库 pj介绍
2010/12/19 Javascript
jQuery 源码分析笔记(2) 变量列表
2011/05/28 Javascript
JavaScript通过RegExp实现客户端验证处理程序
2013/05/07 Javascript
3分钟写出来的Jquery版checkbox全选反选功能
2013/10/23 Javascript
jqplot通过ajax动态画折线图的方法及思路
2013/12/08 Javascript
JavaScript中的继承之类继承
2016/05/01 Javascript
Bootstrap基本插件学习笔记之折叠(22)
2016/12/08 Javascript
浅谈Node.js:理解stream
2016/12/08 Javascript
JavaScript中双向数据绑定详解
2017/05/03 Javascript
jQuery自动或手动图片切换效果
2017/10/11 jQuery
jQuery实现表格隔行换色
2018/09/01 jQuery
原生js实现分页效果
2020/09/23 Javascript
python算法学习之计数排序实例
2013/12/18 Python
python3模拟百度登录并实现百度贴吧签到示例分享(百度贴吧自动签到)
2014/02/24 Python
Python实现完整的事务操作示例
2017/06/20 Python
python的Tqdm模块的使用
2018/01/10 Python
使用python实现简单五子棋游戏
2019/06/18 Python
Python迭代器Iterable判断方法解析
2020/03/16 Python
python学习笔记之多进程
2020/08/06 Python
CSS3实现滚动条动画效果代码分享
2016/08/03 HTML / CSS
HTML5边玩边学(2)基础绘图实现方法
2010/09/21 HTML / CSS
美国性感女装网站:bebe
2017/03/04 全球购物
牧马人澳大利亚官网:Wrangler澳大利亚
2019/10/08 全球购物
初三学习决心书
2014/03/11 职场文书
大学竞选班干部演讲稿
2014/08/21 职场文书
无财产离婚协议书范本
2014/10/28 职场文书
员工辞职信范文
2015/03/02 职场文书
跑出一片天观后感
2015/06/08 职场文书
人间正道是沧桑观后感
2015/06/15 职场文书
2016特色励志班级口号
2015/12/24 职场文书
Python尝试实现蒙特卡罗模拟期权定价
2022/04/21 Python