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,
}  #按需修改

 

posted @ 2017-08-30 01:25  daiwenxugo  阅读(379)  评论(0编辑  收藏  举报