Python读取JSON数据,并解决字符集不匹配问题
2016-05-21 19:03
746 查看
今天来谈一谈Python解析JSON数据,并写入到本地文件的一个小例子。
–
使用Python解析出需要的部分
写入到本地文件,供其他的应用程序读取
完成整个业务需求
读取到的结果:(由于是浏览器显示的时候的编码与之不匹配,故出现了乱码,但这并不影响我们对数据的处理)
–
思路如下
从一个返回JSON天气数据的网站获取到目标JSON数据串使用Python解析出需要的部分
写入到本地文件,供其他的应用程序读取
完成整个业务需求
原料
一个可以获得天气信息的URL网址,如天气信息接口读取到的结果:(由于是浏览器显示的时候的编码与之不匹配,故出现了乱码,但这并不影响我们对数据的处理)
{"weatherinfo":{"city":"鍖椾含","cityid":"101010100","temp":"18","WD":"涓滃崡椋�","WS":"1绾�","SD":"17%","WSE":"1","time":"17:05","isRadar":"1","Radar":"JC_RADAR_AZ9010_JB","njd":"鏆傛棤瀹炲喌","qy":"1011","rain":"0"}}
代码示例
import sys import urllib,urllib2 import json # 获取到目标URL的JSON数据串 def getHtml(url): page = urllib2.urlopen(url) html = page.read() return html def parseTOUTF8(data): data = json.loads(data) content = data['weatherinfo'] result = json.dumps(content,ensure_ascii=False) return result def prettyData(data): result = 'My Weather Info :\n' for item in data: result = result + item + '\t' + data[item] + '\n' return result def writeToLocal(filepath,filename,data): file = os.open(path+filename,'wb') file.write(data) file.close() print '数据已经成功写入到本地文件' if __name__ == "__main__": url = 'http://www.weather.com.cn/data/sk/101010100.html' page = getHtml(url) text = parseTOUTF8(page) content = prettyData(text) path=r'F:\MyWeatherInfo.txt' write(path,'',content) print '天气信息获取并更新完毕'
下一步
这样就算完成了。接下来就是使用其他的语言或者仍旧使用Python读取这些数据,然后做些其他的处理了。这相比于使用Java获取网络数据,然后解析JSON字符串简单多了吧。相关文章推荐
- Python读取JSON数据,并解决字符集不匹配问题
- python EndUpdateResource问题
- LAN中访问其它主机的jupyter/ipython
- python核心编程
- Python图表绘制:matplotlib绘图库入门/python之import机制详解
- 基于正则表达式(python)对东方财富网上证指数吧爬虫实例
- python实现socket上传下载文件-进度条显示
- python实现socket上传下载文件-进度条显示
- python 爬虫抓取19楼租房信息
- Python函数式编程之高阶函数
- python中的if __name__=='__main__'的作用
- Python输出json时中文处理问题
- Python:Python基础(三)
- 结巴中文分词使用学习(python)
- LeetCode Linked List Cycle II
- [从头学python] 第07节 numpy的盘点
- Nagios调用Python程序控制微信公众平台发布报警信息
- Ubuntu14.04 64位+Python3.4环境下安装matplotlib的方法
- [转]python 获取脚本所在目录
- pycon-python 会议