step7: 输出到json文件

调用scrapy自身的Exporter输出

编辑pipeline文件

import json
from scrapy.exporters import JsonItemExporter    #引入Exporter
class JsonExporterPipeline(object):
    #调用scrapy提供的JSONExporter导出JSON文件
    def __init__(self):
        self.file = open('articleexporter.json','wb')   #打开文件,定义文件名,二进制
        self.exporter = JsonItemExporter(self.file,encoding="utf-8")    #进行实例化
        self.exporter.start_exporting()
        
    def close_spider(self,spoder):
        self.exporter.finish_exporting()
        self.file.close()
        
    def process_item(self,item,spider): #将item写入文件
        self.exporter.export_item(item)
        return item

修改setting文件

ITEM_PIPELINES = {
   'Redbacktest.pipelines.RedbacktestPipeline': 300,
    'Redbacktest.pipelines.JsonExporterPipeline': 2,
}  #按需修改
原文地址:https://www.cnblogs.com/coolwinds/p/7451075.html