我在同一个项目中编写了几个蜘蛛,它们调用相同的管道类。
在这样的管道代码中:
def process_item(self, item, spider):
if spider.name == 'spider1':
# do something
if spider.name == 'spider2':
# do something
...
在我让我的新spiedrX调用之前它就可以了。
我的spiderX调用的代码就像其他蜘蛛一样调用:
# just like this kind of way
for book in books:
item = BookItem();
# assignment
yield item
然后它没有调用管道,但其他人可以,我无法弄清楚原因。
当我运行spiderX时,有一个行scrapy输出:
2016-07-17 22:30:15 [scrapy] INFO: Enabled item pipelines:
['dgut_spider.pipelines.CustomPipeline']
这意味着管道可以正常工作
任何建议都会表示赞赏。
编辑:只是我的新spiderX无法调用管道,其他人可以。