Scrapy - 每件物品不同的管道

时间:2017-05-11 23:29:33

标签: python scrapy

我是scrapy和python的新手,请原谅我对此的无知。

我需要在数据库中存储两种不同类型的项目。对于其中一个,我需要在插入之前做一些额外的查询。是否可以根据项目使用不同的管道?如果没有,我怎样才能区分到达管道时哪个项目是什么?

1 个答案:

答案 0 :(得分:2)

基本上你可以丢弃你不想在某个管道中处理的项目和副本。例如:

class ApplePipeLine(object):

    def process_item(self, item, spider):
        if not isinstance(item, Apple):
            return item
        # Do something with Apple
        return item


class OrangePipeLine(object):

    def process_item(self, item, spider):
        if not isinstance(item, Orange):
            return item
        # Do something with Orange
        return item