美文网首页
Scrapy生成json中文乱码解决

Scrapy生成json中文乱码解决

作者: 一只肥豚鼠 | 来源:发表于2019-02-16 00:00 被阅读9次

ITEM_PIPELINES = [‘xxx.pipelines.JsonWithEncodingPipeline’]

    # -*- coding: utf-8 -*-
    
    # Define your item pipelines here
    #
    # Don't forget to add your pipeline to the ITEM_PIPELINES setting
    
    
    
    import json
    import codecs
    import os
    
    
    class JsonWithEncodingPipeline(object):
    
        def __init__(self):
            self.file = codecs.open('scraped_data_utf8.json', 'w', encoding='utf-8')
            self.file.write('[')
    
        def process_item(self, item, spider):
            line = json.dumps(dict(item), ensure_ascii=False) + "\n"
            self.file.write(line+',')
            return item
    
        def close_spider(self, spider):
            self.file.seek(-1, os.SEEK_END)
            self.file.truncate();
            self.file.write(']')
            self.file.close()

相关文章

网友评论

      本文标题:Scrapy生成json中文乱码解决

      本文链接:https://www.haomeiwen.com/subject/bfgmeqtx.html