scrapy导出文件时出现中文乱码怎么办

scrapy导出文件时出现中文乱码怎么办?相信很多没有经验的人对此束手无策,这篇文章总结了scrapy导出文件时出现中文乱码的解决办法,通过这篇文章希望你能解决这个问题。

创新互联建站专注于企业成都营销网站建设、网站重做改版、旌阳网站定制设计、自适应品牌网站建设、H5开发商城网站建设、集团公司官网建设、成都外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为旌阳等各大城市提供网站开发制作服务。

背景:

使用scrapy crawl spidername -o filename.json命令执行爬虫,并将item写入文件,发现中文乱码,比如这样子:
scrapy导出文件时出现中文乱码怎么办

解决方法

第一种方法:

使用scrapy命令导出时指定编码格式

scrapy crawl baidu -o baidu_med.json -s FEED_EXPORT_ENCODING=utf-8
第二种方法:

借助Pipeline将item写入到文件
1.修改pipelines.py,添加:

import json
import codecs

class YiyaoPipeline(object):
    def __init__(self):
        self.file = codecs.open('item.json', 'wb', encoding='utf-8')

    def process_item(self, item, spider):
        line = json.dumps(dict(item), ensure_ascii=False) + '\n'
        self.file.write(line)
        return item

2.修改settings.py,激活pipeline:

ITEM_PIPELINES = {
   'yiyao.pipelines.YiyaoPipeline': 300,
}

注意:settings.py默认有ITEM_PIPELINES配置,只是注销掉了。
3.使用scrapy命令导出时,直接执行:

scrapy crawl baidu 

看完这篇文章,你能够独立解决scrapy导出文件时出现中文乱码的问题了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读。

标题名称:scrapy导出文件时出现中文乱码怎么办
网站网址:https://www.cdcxhl.com/article32/gesopc.html

成都网站建设公司_创新互联,为您提供品牌网站设计自适应网站App设计网站设计外贸建站定制网站

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

绵阳服务器托管