解决Scrapy抓取中文网页保存为json文件时中文不显示而是显示unicode的问题
注意:此方法跟之前保存成json文件的写法有少许不同之处,注意区分
情境再现:
使用scrapy抓取中文网页,得到的数据类型是unicode,在控制台输出的话也是显示unicode,如下所示
{'author': u'\u51af\u53cb\u5170\u7b49',
'classification': u' \u4eba\u6587\u793e\u79d1',
'down_bd_code': u'\u63d0\u53d6\u5bc6\u7801\uff1asp6t',
'down_bd_url': u'https://pan.baidu.com/s/1N1NPVupmnPX6W5Fm2YHccg',
'title': u'\u4e2d\u897f\u65b9\u54f2\u5b66\u53f2\uff08\u5957\u88c5\u51712\u518c\uff09'}
保存成json文件时需要显示出中文
import json import codecs# Define your item pipelines here # # Don't forget to add your pipeline to the ITEM_PIPELINES setting # See: http://doc.scrapy.org/en/latest/topics/item-pipeline.htmlclass WriteJsonPipeline(object):def __init__(self):self.file = codecs.open('items.json', 'w', encoding='utf-8')def process_item(self, item, spider):line = json.dumps(dict(item),ensure_ascii=False) + '\n'self.file.write(line)return itemdef spider_closed(self, spider):self.file.close()
将以上内容插入pipelines.py,同时在settings.py中加入
ITEM_PIPELINES = {
'panda.pipelines.WriteJsonPipeline': 300
}
以调用pipelines文件
转载于:https://www.cnblogs.com/sanduzxcvbnm/p/10309401.html
解决Scrapy抓取中文网页保存为json文件时中文不显示而是显示unicode的问题相关推荐
- python将数据保存为json文件时,打开json文件里面的中文发现是unicode码
最近要将爬取的数据通过json.dump处理后保存成json文件,程序一切运行正常,但是打 开保存之后的json文件发现除了字母,原来的字典数据里面的中文全部变成了unicode 码,像下面这个样子 ...
- wireshark 抓ps 流_wireshark抓取rtp流保存为.264文件并播放
注:此文章含转载内容,如侵权,请联系我来删除: 在调试vlc播放器播放rtp时,由于出现卡顿,所以想把rtp流保存下来播放,看是否是rtp推的问题还是电脑解码问题.网上看到的类似文章,我都没成功,最后 ...
- json html显示中文乱码,后台请求json文件,中文出现乱码
为什么我的中文出现乱码,怎么设置啊? 前台代码: $(document).ready(function(){ $('a').click(function(){ $.ajax({ type: " ...
- 用scrapy+selenium + phantomjs 爬取vip网页,保存为json格式,写入到mysql数据库,下载图片(二)
接上一编 weipin.py文件的代码 : # -*- coding: utf-8 -*- import scrapy from weipinhui.items import WeipinhuiIte ...
- 用scrapy+selenium + phantomjs 爬取vip网页,保存为json格式,写入到mysql数据库,下载图片(一)
用命令在终端创建一个项目: scrapy startproject myvipspider 进入到myvipspider项目下运行命令: scrapy genspider weipin "v ...
- Python中文字符保存为json文件
坚持写博客
- python 数据写入json文件时中文显示Unicode编码问题
三.解决办法 在json.dumps()方法中加入一个参数!!ensure_ascii=False!!!!!!!!!ensure_ascii=False!!!!!!!!ensure_ascii=Fal ...
- java 中文路径 读取_Java读取文件时中文路径处理
Java 社区论坛 - Sym 1.6.0 发布 简介 Sym 是一个用 Java 写的现代化的社区论坛,欢迎来体验!(如果你需要搭建一个企业内网论坛,请使用 SymX) 非常详细的 Sym 功能点脑 ...
- scrapy抓取的中文结果乱码解决办法
使用scrapy抓取的结果,中文默认是Unicode,无法显示中文. 中文默认是Unicode,如:\u5317\u4eac\u5927\u5b66 解决办法,原文:http://www.aisun. ...
最新文章
- 成功解决AttributeError: type object 'scipy.interpolate.interpnd.array' has no attribute '__reduce_cython
- iOS开发-编译出错 duplicate symbols for architecture x86_64
- 操作系统中的多级队列调度
- Appium——主从控制执行
- Spoken English(015)
- 有关javabean的说法不正确的是_关于 JavaBean, 下列叙述中不正确的是 ( ) 。_学小易找答案...
- SQL 语句还原SQL Server数据库
- 获取本地IP和端口号的指令
- Luogu1502 窗口的星星
- 浅谈InnoDB存储引擎下锁的分类
- 视觉SLAM十四讲 第9讲 卡尔曼滤波
- QT样式表设置 之 QComboBox下拉框样式
- 打印机共享到网络访问不了计算机名,共享打印机XP访问Win7/Win10提示指定的网络名不再可用解决方法...
- css3三角形兼容_CSS三角的写法(兼容IE6)
- wifi辐射安全距离
- python-pptx替换ppt模板的文本
- Be awesome
- vue2[初级]事件处理器
- CSS--2D 3D
- 【Leetcode刷题记录_C++】【贪心】