python处理json数据 乱码报错_python json.loads json.dumps(ensure_ascii = False) 汉字乱码问题解决...
有这样一个需求:
需要一个json 文件 数据从数据库里查询出来
1. 设置文件头
# -*- coding:utf-8 -*-
2. 连接数据库 将数据库连接数据库的编码设置为utf8
db = MySQLdb.connect(host='数据库,user=用户名,passwd=密码,db='数据库, init_command="set names utf8" )
3. 查询出来的数据转化为json
t = json.dumps(r, ensure_ascii=False)
如果 不加 ensure_ascii=False 输出的 t 如果有汉字的话都默认给转换成一堆编码 如果加上的话 就都能正常显示变成了汉字
不加的话: t = json.dumps(r)
[{"category": {"label": "\u65b0\u8f66"}, "title": "\u5168\u65b0\u8d77\u4e9a\u798f\u745e\u8fea\u8def\u8bd5\u8c0d\u7167\u66dd\u5149 \u6216\u4e3a\u5b9a\u540dK3", "url": "http://auto.sohu.com/20120523/n343878794.shtml", "source": "\u641c\u72d0\u6c7d\u8f66", "time": 1337740004, "imgUrl": ""}, {"category": {"label": "\u65b0\u8f66"}, "title": "\u65b0\u5965\u8feaQ7/Q8\u66f4\u591a\u4fe1\u606f\u66dd\u5149 \u5c06\u57fa\u4e8eMLB\u5e73\u53f0", "url": "http://auto.sohu.com/20120523/n343873150.shtml", "source": "\u641c\u72d0\u6c7d\u8f66", "time": 1337737913, "imgUrl": ""}]
加上的话: t = json.dumps(r, ensure_ascii=False)
[{"category": {"label": "新车"}, "title": "全新起亚福瑞迪路试谍照曝光 或为定名K3", "url": "http://auto.sohu.com/20120523/n343878794.shtml", "source": "汽车", "time": 1337740004, "imgUrl": ""}, {"category": {"label": "新车"}, "title": "新奥迪Q7/Q8更多信息曝光 将基于MLB平台", "url": "http://auto.sohu.com/20120523/n343873150.shtml", "source": "汽车", "time": 1337737913, "imgUrl": ""}]
我们在post请求数据时,响应的内容是json数据,但是返回的json数据中文显示有问题,变成 \uXXX的形式。这是因为中文以 unicode 编码了,而默认是以ASCII解析的,中文不在ASCII编码中,所以无法显示。
这时候我们可以用import json 然后调用json.loads() 和json.dumps()来使中文正确显示。 下面的代码(data是中文不能正常显示的json串,newjson是处理后中文正常显示的字符串)
import json
myjson=json.loads(data) #data是向 api请求的响应数据,data必须是字符串类型的
newjson=json.dumps(myjson,ensure_ascii=False) #ensure_ascii=False 就不会用 ASCII 编码,中文就可以正常显示了
print newjson
python处理json数据 乱码报错_python json.loads json.dumps(ensure_ascii = False) 汉字乱码问题解决...相关推荐
- python json.loads json.dumps(ensure_ascii = False) 汉字乱码问题解决
python json.loads json.dumps(ensure_ascii = False) 汉字乱码问题解决 python 转换为json时候 汉字编码问题 2017年03月23日 18:5 ...
- python处理json数据 乱码报错_python操作mysql中文显示乱码的解决方法
本文实例展示了一个脚本python用来转化表配置数据xml并生成相应的解析代码. 但是在中文编码上出现了乱码,现将解决方法分享出来供大家参考. 具体方法如下: 1. Python文件设置编码 utf- ...
- python函数第二次运行报错_Python学习笔记2-函数、高级特性
函数 调用函数 要调用一个函数,需要知道函数的名称和参数,比如求绝对值的函数abs,只有一个参数 >>> abs(100) 100 >>> abs(-20) 20 ...
- 【python】numpy数据load报错
使用numpy.load('xxx.npy')数据时,报错UnicodeError: Unpickling a python object failed: UnicodeDecodeError 解决办 ...
- python 引用文件中的类 报错_Python学习笔记7 头文件的添加规则(转载)
转载自:https://www.cnblogs.com/taurusfy/p/7605787.html ************************************************ ...
- python的pymssql模块的报错_python pymssql - pymssql模块官方文档的翻译
译者注:译者博客(http://blog.csdn.net/lin_strong),转载请保留这条.此为pymssql模块version2.1.4官方文档的翻译,仅供学习交流使用,请勿用于商业用途. ...
- 数据导入报错:Got a packet bigger than‘max_allowed_packet’bytes的问题
2019独角兽企业重金招聘Python工程师标准>>> 数据导入报错:Got a packet bigger than'max_allowed_packet'bytes的问题 2个解 ...
- 如何安装kaggle API下载数据 及报错OSError: Could not find kaggle.json. Make sure it‘s located in /home/user/解决办法
如何安装kaggle API下载数据 及报错OSError: Could not find kaggle.json. Make sure it's located /解决办法 C:\Users\pc& ...
- python导入csv报错_Python 导入csv报错的解决办法
日常做分析导数据源进python,有时候会出现报错及显示乱码的问题,今天来梳理一下常见的报错. python 代码 import pandas as pd import numpy as np df= ...
最新文章
- S/4HANA Product master OData
- HTML5 file api读取文件的MD5码工具
- 表面上在帮女朋友拍照,其实镜头瞄准的是......
- Select显示多级分类列表
- 直接上手!不容错过的 Visual Studio Code 十大扩展组件
- 大数据是国家目前急需的技术领域
- LeetCode Binary Tree Right Side View (DFS/BFS)
- Android仿人人客户端(v5.7.1)——对从服务器端(网络)获取的图片进行本地双缓存处理(流程图或活动图)...
- redis的基本命令
- 操作系统-io设备基本概念和分类
- 百度地图点击地图获取地址
- html网页内部超链接介绍
- cad中简单流程图制作_教你怎么制作出高逼格的专业流程图!
- C语言之stroke_s()
- pca图解读_PCA 图像识别 详解(一)
- 【云宏大讲坛】关键应用在超融合环境下的实践
- 微信解绑手机号服务器会保留吗,微信怎么解绑手机号?微信还能解绑手机号吗?...
- 公需科目2020快速学习_2021公需科目快速学习方法
- java软件工程师简历内容
- 友谊到底是艘什么样的小破船,那么…
热门文章
- 一群参与境内外赌博网站的开发的程序员被抓,网友:切勿面向监狱编程...
- 工行高级经理林承军:工行基于 MySQL 构建分布式架构的转型之路
- 开发无框架单页面应用 — 老码农的祖传秘方
- Hadoop数据压缩 与 数据清洗ETL
- Redis-字典(hash)基础
- MySQL数据库和Oracle数据库的区别
- 技术胖1-4季视频复习— (看视频笔记)
- Oracle的sql开发之包技术实战
- 人生的意义,呵!我找到了
- SpringCloud(第 054 篇)简单 Quartz-Cluster 微服务,采用注解配置 Quartz 分布式集群... 1