Python下读取转换unicode的json格式
转自:
https://blog.csdn.net/felcon/article/details/38524317
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。 易于人阅读和编写,同时也易于机器解析和生成。
写爬虫程序时发现页面很多内容都是基于json传输的,而且都是unicode编码,需要读取并转换为汉字,这可以直接使用python的json包处理
python的json.dumps方法默认会输出成这种格式"\u535a\u5ba2\u56ed",。
要输出中文需要指定ensure_ascii参数为False,如下代码片段:
json.dumps({'text':"中文"},ensure_ascii=False)
json的一个简单示例为:
{ "firstName":"Bill" , "lastName":"Gates" }
其中“firstName”和”lastName“为健(key),“Bill”和“Gates”为值(value)
首先需要导入json包
import json
使用
info = json.JSONDecoder().decode(info)
可以读取json数据,同时将unicode转换为汉字
使用
info["firstName"]
来读取健”firstName"所对应的值“Bill”
比如最近爬爆米花视频,得到存储数据的是unicode的,要获取里面的list,就可以使用上面的方法
response.text =
{
"Videolist":[{"appID":"35943","appName":"逗影视频","appPic":"//p001.baomihua.com/b94ec748-abcf-4096-ba42-cc986d28ea83_61503983.png","appUrl":"//www.baomihua.com/user/35943","videoId":"38136258","videoTitle":"如今拉客都用这套路?长点心吧!贪小便宜吃大亏","videoCost":"00:22","videoPlayUrl":"//video.baomihua.com/v/38136258","videoImgUrl":"//img04.video.baomihua.com/x/38136258.jpg","companyName":"太原瑞宝达文化传媒有限公司","isRec":"0"},{"appID":"34845","appName":"娱闻壹姐","appPic":"//p001.baomihua.com/1e3abb19-64a7-4c3a-9845-da1e15cec126.jpg","appUrl":"//www.baomihua.com/user/34845","videoId":"38134456","videoTitle":"蔡徐坤微博大方表白!内容让粉丝们彻夜难眠,不愧是偶像!","videoCost":"01:07","videoPlayUrl":"//video.baomihua.com/v/38134456","videoImgUrl":"//img04.video.baomihua.com/x/38134456.jpg","companyName":"杭州匠星影视传媒有限公司","isRec":"0"},{"appID":"34923","appName":"嗨儿原创","appPic":"//p001.baomihua.com/f1613b50-a19a-4ddb-82c8-393edba276ab.jpg","appUrl":"//www.baomihua.com/user/34923","videoId":"38134104","videoTitle":"张馨予结婚嫁给了老实人,李晨没祝福!","videoCost":"04:01","videoPlayUrl":"//video.baomihua.com/v/38134104","videoImgUrl":"//img04.video.baomihua.com/x/38134104.jpg","companyName":"秦皇岛屿海文化传媒有限公司","isRec":"0"}]
}
content = json.JSONDecoder().decode(response.text)
print type(content["Videolist"]) #输出: <type 'list'>
Python下读取转换unicode的json格式的更多相关文章
- 利用python将excel数据解析成json格式
利用python将excel数据解析成json格式 转成json方便项目中用post请求推送数据自定义数据,也方便测试: import xlrdimport jsonimport requests d ...
- python下读取excel文件
项目中要用到这个,所以记录一下. python下读取excel文件方法多种,用的是普通的xlrd插件,因为它各种版本的excel文件都可读. 首先在https://pypi.python.org/py ...
- python读取excel数据为json格式(兼容xls\xlsx)
做自动化时需要从excel读取数据: 本文实现将excel文件数据读取为json格式,方便自动化调用 读取xls文件 使用xlrd读取xls文件代码: import xlrd def read_xls ...
- 如何使用python内置的request发送JSON格式的数据
使用步骤如下: 一.如果想发送json格式的数据,需要使用request模块中的Request类来创建对象,作为urlopen函数的参数 二.header中添加content-type为applica ...
- Flask(python)异步(ajax)返回json格式数据
主要讨论两个问题,第一个是关于json.dumps 与jsonify区别,第二个是几种异步的区别(见jQuery中的$.getJSON.$.ajax.$.get.$.post的区别). json.du ...
- Python中读取文件中的json串,并将其写入到Excel表格中
Json:JavaScript Objective Notation,是一种轻量级的数据交换格式.Json最广泛的应用是作为AJAX中web服务器和客户端的通讯的数据格式.现在也常用语http请求中, ...
- extjs +String2 +Spring 下的分页 以及返回json格式错误的问题
首先,分页 很简单. 1前台extjs数据源, var shipMgrStore = Ext.create('Ext.data.Store', { model: 'App.ShipMgr.model ...
- jquery读取csv文件并用json格式输出
直接贴上代码: <html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>Untit ...
- python知识:json格式文本;异常处理;字符串处理;unicode类型和str类型转换
python进程中的实例和json格式的字符串之间的映射关系是非常直接的,相当于同一个概念被编码成不同的表示: stream in json form ----json.loads(str)----- ...
随机推荐
- Ubuntu 13.04 主机名的修改
由于某些原因,要修改Ubuntu的主机名,晚上Google了一下,要改的地方为/etc/hostname,即将里面的字符串替换为你要起的主机名即可. sudo vi /etc/hostname 修改即 ...
- POJ 1240 Pre-Post-erous! && East Central North America 2002 (由前序后序遍历序列推出M叉树的种类)
题目链接 问题描述 : We are all familiar with pre-order, in-order and post-order traversals of binary trees. ...
- centos7.2 安装 nginx
Centos 7 源码编译安装 Nginx 1.13 原文地址:https://renwole.com/archives/39 1.先决条件: centos7.2 64位,安装配置nginx前必须安装 ...
- python3学习笔记.5.打包发布
为了给别人使用将 .py 文件打包成 .exe 文件 安装 PyInstaller ,完成 打开 Cmd 调用 path:\pyinstaller.exe -F path:\name.py 发布文件 ...
- dockerfile创建镜像及容器
第一步: 从王总git上:http://git.oursdata.com/wangyue/dockerfiles.git 进入下图的文件夹中 然后执行以下的说明执行步骤 第二步: 开发环境dock ...
- 【codeforces】【比赛题解】#855 Codefest 17
神秘比赛,以<哈利波特>为主题……有点难. C题我熬夜切终于是写出来了,可惜比赛结束了,气啊. 比赛链接:点我. [A]汤姆·里德尔的日记 题意: 哈利波特正在摧毁神秘人的分灵体(魂器). ...
- Linux input子系统学习总结(三)----Input设备驱动
Input 设备驱动 ---操作硬件获取硬件寄存器中设备输入的数据,并把数据交给核心层: 一 .设备驱动的注册步骤: 1.分配一个struct input_dev : struct ...
- mvc 分部视图(Partial)显示登陆前后变化以及Shared文件夹在解决方案资源管理器中没有显示的问题
刚开始我的解决方案资源管理器中没有显示Shared文件夹,但Shared文件夹在项目中是实际存在的,我搜了下好像没有类似的解答(可能是我搜索的关键词不够准确).后来自己看了下vs2012. 其实解决方 ...
- jQuery-对标签元素 文本操作-属性操作-文档的操作
一.对标签元素文本操作 1.1 对标签中内容的操作 // js var div1 = document.getElementById("div1"); div1.innerText ...
- 添加自签发的 SSL 证书为受信任的根证书
原文:http://cnzhx.net/blog/self-signed-certificate-as-trusted-root-ca-in-windows/ 添加自签发的 SSL 证书为受信任的根证 ...