无法使Scrapy管道工作
我写了一个爬虫,使用的是Scrapy这个框架。不过,我在让数据处理管道(pipelines)工作时遇到了一些麻烦。在我的pipelines.py文件里,有以下这段代码:
class FilePipeline(object):
def __init__(self):
self.file = open('items.txt', 'wb')
def process_item(self, item, spider):
line = item['title'] + '\n'
self.file.write(line)
return item
而我的CrawlSpider子类里有这一行代码,用来激活这个类的管道。
ITEM_PIPELINES = [
'event.pipelines.FilePipeline'
]
但是当我运行它的时候,使用的是
scrapy crawl my_spider
我看到一行提示:
2010-11-03 20:24:06+0000 [scrapy] DEBUG: Enabled item pipelines:
没有任何管道(我猜这应该是日志输出的地方)。
我试着查看文档,但似乎没有完整的项目示例来帮助我确认是否遗漏了什么。
有没有什么建议可以让我接下来尝试的?或者我该去哪里找更多的文档?
2 个回答
0
我敢打赌,这里可能是因为“pipeline”这个词的大小写不一致导致的问题:
Pipeline 和 PipeLine
我注意到 'event.pipelines.FilePipeline'
用的是前者,而你的代码用的是后者:你的文件名用的是哪个呢?
我自己也因为这个拼写错误吃过很多亏!
8
明白了!这行代码需要放在项目的设置模块里。现在可以正常工作了!