使用方法:terminal中输入
复制代码代码如下:
python weather.py http://www.weather.com.cn/weather/101010100.shtml
北京6天的天气数据 json格式
复制代码代码如下:
#coding=utf-8
#weather.py
import urllib
import re
import simplejson
import sys
if len(sys.argv) != 2:
print 'please enter: python ' + sys.argv[0] + '
exit(0)
url = sys.argv[1];
def readurlPageContent(url):#获取页面的所有数据 逐行读取
webpage = urllib.urlopen(url);
line = webpage.readline();
data = ''
while line:
data = data + line.strip(); #去除每行两边的的空格
line = webpage.readline();
return data
def getDatabody(data):
reg = re.compile(r'((?:(?!)');
matchs = reg.findall(data,re.I);
if len(matchs) > 0:
return matchs[0]
return None
def getSixDayWeather(data):
regs = re.compile(r'>((?:(?!<)(?!>)(?!var).)+)<');
datas = regs.findall(data)
if len(datas) > 12:
datas = datas[12:len(datas)-7];#提取其中的78项 即后面6天的天气数据 每天相关的信息有13个
return datas
return None
data = readurlPageContent(url);
match_data = getDatabody(data)
if match_data == None :
print 'get weather data fail'
exit(0)
weathers_data = getSixDayWeather(match_data)
if weathers_data == None:
print 'get six day info fail'
exit(0)
count = len(weathers_data);
groups_item_count = count / 6;
weathers = {};
groups = [];
start = 0
for item in weathers_data :
if (start % groups_item_count) == 0:
groups = [];
weathers[('day'+str(start/groups_item_count + 1))] = groups;
groups.append(item)
start = start + 1
print simplejson.dumps(weathers, encoding='UTF-8', ensure_ascii=False)
注:本文中使用了第三方JSON库simplejson,安装方法参考下面:
1.下载:http://pypi.python.org/pypi/simplejson/ ,文件为压缩文件
2.解压:可以直接右键:解压文件.例如:D:/simplejson
3.开始---运行---输入命令:cmd
4.进入到目录(如:D:/simplejson)
复制代码代码如下:
cd D:/simplejson
5.运行安装文件:setup.py install
您可能感兴趣的文章:
让python json encode datetime类型
python解析json实例方法
python处理json数据中的中文
QQ空间 搜狐微博 人人网 开心网 百度搜藏更多
Tags:python json 中国天气网
复制链接收藏本文打印本文关闭本文返回首页
上一篇:python实现文件名批量替换和内容替换
下一篇:windows下wxPython开发环境安装与配置方法
相关文章
2014-06-06python操作xml文件详细介绍
2013-12-12python使用xmlrpc实例讲解
2014-02-02java直接调用python脚本的例子
2012-05-05用python实现批量重命名文件的代码
2014-02-02python 解析XML python模块xml.dom解析xml实例代码
2013-12-12树莓派中python获取GY-85九轴模块信息示例
2013-11-11python快速排序代码实例
2014-01-01忘记ftp密码使用python ftplib库暴力破解密码的方法示例
2013-12-12python3图片转换二进制存入mysql
2014-06-06python实现的一个p2p文件传输实例
文章评论
最 近 更 新
python 实现归并排序算法
Python日期操作学习笔记
使用scrapy实现爬网站例子和实现网络爬虫
python 多进程通信模块的简单实现
python实现的各种排序算法代码
使用python调用浏览器并打开一个网址的例
python使用mysqldb连接数据库操作方法示例
利用soaplib搭建webservice详细步骤和实例
利用python获得时间的实例说明
Python pass 语句使用示例
热 点 排 行
Python入门教程 超详细1小时学会
python 中文乱码问题深入分析
比较详细Python正则表达式操作指
Python字符串的encode与decode研
Python open读写文件实现脚本
Python enumerate遍历数组示例应
Python 深入理解yield
Python+Django在windows下的开发
python 文件和路径操作函数小结
python 字符串split的用法分享