浅谈python中对于json写入txt文件的编码问题

yipeiwu_com6年前Python基础

最近一直在研究python+selenium+beautifulsoup的爬虫,但是存入数据库还有写入txt文件里面的时候一直都是unicode编码的格式。

接下来就是各种翻阅文档,查找谷歌和度娘,但是都没有具体的说明是什么问题。

结果根据自己的代码发现,原来是一句代码写到后面去了。

name = json.dumps('中国你好', ensure_ascii=False) #重点就是这一句代码 
date = time.strftime('%Y-%m-%d', time.localtime(time.time())) #此处是时间转换 
f = codecs.open(date + '.txt', 'a', 'utf-8') 
f.write('%s\n\n' % name) 
f.close() 

分析 json.dumps('中国你好')

'中国你好' 是ascii 字符码,而不是真正的中文。

这是因为json.dumps 序列化时对中文默认使用的ascii编码

想输出真正的中文需要指定ensure_ascii=False

json.dumps中可以放置json字符串,但是也必须指定ensure_ascii=False

json.dumps : dict转成str

以上这篇浅谈python中对于json写入txt文件的编码问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python进阶学习之特殊方法实例详析

前言 最近在学习python,学习到了一个之前没接触过的--特殊方法。 什么是特殊方法?当我们在设计一个类的时候,python中有一个用于初始化的方法$__init__$,类似于java...

python进行两个表格对比的方法

如下所示: # -*- coding:utf-8 -*- import xlrd import sys import re import json dict1={} dict2={...

Java及python正则表达式详解

Java及python正则表达式详解

正则表达式语法及常用元字符: 正则表达式有元字符及不同组合来构成,通过巧妙的构造正则表达式可以匹配任意字符串,并完成复杂的字符串处理任务。 常用的元字符有: 其中在使用反斜线时要注意:如...

opencv与numpy的图像基本操作

opencv与numpy的图像基本操作

1. 像素基本操作 1.1 读取、修改像素 可以通过[行,列]坐标来访问像素点数据,对于多通道数据,返回一个数组,包含所有通道的值,对于单通道数据(如gray),返回指定坐标的值,也可...

django DRF图片路径问题的解决方法

django DRF图片路径问题的解决方法

前言 其实就是Django RESTful Framework,RESTful一种API的命名风格,主要因为前后端分离开发出现,前后端分离: 用户访问静态文件的服务器,数据全部由ajax...