2013-08-22 104 views
2

我使用下面的管道(使用Scrapy 0.17)我的項目導出到CSV:當我使用這條管道出現以下錯誤scrapy無法導出爲CSV

from scrapy import signals 
from scrapy.contrib.exporter import CsvItemExporter 

class CsvExportPipeline(object): 

    def __init__(self): 
     self.files = {} 

    @classmethod 
    def from_crawler(cls, crawler): 
     pipeline = cls() 
     crawler.signals.connect(pipeline.spider_opened, signals.spider_opened) 
     crawler.signals.connect(pipeline.spider_closed, signals.spider_closed) 
     return pipeline 

    def spider_opened(self, spider): 
     file = open('/home/ubuntu/SCRAPING/%s_%s.csv' % (self.name, datetime.datetime.now()), 'w+b') 
     self.files[spider] = file 
     self.exporter = CsvItemExporter(file) 
     self.exporter.start_exporting() 

    def spider_closed(self, spider): 
     self.exporter.finish_exporting() 
     file = self.files.pop(spider) 
     file.close() 

    def process_item(self, item, spider): 
     self.exporter.export_item(item) 
     return item 

但是: exceptions.AttributeError: 'CsvExportPipeline' object has no attribute 'exporter

請提出我缺少的東西?

回答

1

得到了solution.Problem是利用當我命名file.It應spider.name 咦錯誤消息只是誤導self.name並帶走了幾個小時