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 相关文章推荐
Python中random模块生成随机数详解
Mar 10 Python
Python创建对称矩阵的方法示例【基于numpy模块】
Oct 12 Python
Python实现的插入排序算法原理与用法实例分析
Nov 22 Python
python字符串的方法与操作大全
Jan 30 Python
python 删除非空文件夹的实例
Apr 26 Python
python实现复制文件到指定目录
Oct 16 Python
Python3中configparser模块读写ini文件并解析配置的用法详解
Feb 18 Python
Django实现从数据库中获取到的数据转换为dict
Mar 27 Python
Django之腾讯云短信的实现
Jun 12 Python
Python进行特征提取的示例代码
Oct 15 Python
Python利用matplotlib绘制折线图的新手教程
Nov 05 Python
Django drf请求模块源码解析
Jun 08 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
PHP 数组排序方法总结 推荐收藏
2010/06/30 PHP
PHP运行环境配置与开发环境的配置(图文教程)
2013/06/04 PHP
PHP获取客户端真实IP地址的5种情况分析和实现代码
2014/07/08 PHP
php中分页及SqlHelper类用法实例
2017/01/12 PHP
PHP+MYSQL实现读写分离简单实战
2017/03/13 PHP
php下的原生ajax请求用法实例分析
2020/02/28 PHP
用 javascript 实现的点击复制代码
2007/03/24 Javascript
JS实现简单的键盘打字的效果
2015/04/24 Javascript
jQuery语法小结(超实用)
2015/12/31 Javascript
学习javascript文件加载优化
2016/02/19 Javascript
简单易懂的天气插件(代码分享)
2017/02/04 Javascript
JS实现的简单拖拽功能示例
2017/03/13 Javascript
nodejs制作爬虫实现批量下载图片
2017/05/19 NodeJs
详解Webpack + ES6 最新环境搭建与配置
2018/06/04 Javascript
js正则表达式校验指定字符串的方法
2018/07/23 Javascript
JS中间件设计模式的深入探讨与实例分析
2020/04/11 Javascript
Python使用pymysql小技巧
2017/06/04 Python
python生成带有表格的图片实例
2019/02/03 Python
PyQt编程之如何在屏幕中央显示窗体的实例
2019/06/18 Python
python隐藏终端执行cmd命令的方法
2019/06/24 Python
Python Selenium 之数据驱动测试的实现
2019/08/01 Python
零基础小白多久能学会python
2020/06/22 Python
详解python datetime模块
2020/08/17 Python
澳大利亚制造的羊皮靴:Original UGG Boots
2017/11/13 全球购物
印度手工编织服装和家居用品商店:Fabindi
2019/10/07 全球购物
计算机大学生的自我评价
2013/10/15 职场文书
六十大寿答谢词
2014/01/12 职场文书
母亲追悼会答谢词
2014/01/27 职场文书
班组安全员工作职责
2014/02/01 职场文书
加多宝凉茶广告词
2014/03/18 职场文书
爱我中华教学反思
2014/04/28 职场文书
酒店节能降耗方案
2014/05/08 职场文书
超市创业计划书
2014/09/15 职场文书
英语感谢信范文
2015/01/20 职场文书
工作能力自我评价2015
2015/03/05 职场文书
MySQL 百万级数据的4种查询优化方式
2021/06/07 MySQL