msyz999明仕亚洲官网关于 scrapy 的 pipeline 和 items 题目

能不克不及完成这种:

  1. aItem的数据由aPipeline处理

  2. bItem的数据由bPipeline处理

目标是不是如许呢,
比如你items.py有如下几个item

然后在pipelines.py中的process_item函数里可以如下操纵

如许就可以把差别的数据分开处理了,

你可以在 pipeline 里判别是哪个爬虫的后果:

def process_itemself, item, spider:
    if spider.name == news:
        #这里写存入 News 表的逻辑
        news = News
        ...(省略部分代码)
        self.session.addnews
        self.session.commit
     elif spider.name == bsnews:
        #这里写存入 News 表的逻辑
        bsnews = BsNews
        ...(省略部分代码)
        self.session.addbsnews
        self.session.commit
        
      return item

关于这种多个爬虫在一个工程里的,需求差别爬虫在 pipeline 里运用差别逻辑的题目 scrapy 的作者是这么表明的。
去看看

可以的 pipelines的process_item有个spider参数,可以挑选相应的spider走这个pipeline

(看完/读完)这篇文章有何感想! msyz999明仕亚洲官网的分享…

发表评论

姓名 *
电子邮件 *
站点