cari

Rumah  >  Soal Jawab  >  teks badan

python - 关于 scrapy 的 pipeline 和 items 问题

能不能实现这种:

  1. aItem的数据由aPipeline处理

  2. bItem的数据由bPipeline处理

PHP中文网PHP中文网2826 hari yang lalu557

membalas semua(3)saya akan balas

  • 天蓬老师

    天蓬老师2017-04-18 09:51:55

    Adakah ini tujuannya?
    Sebagai contoh, item.py anda mempunyai item berikut

    Kemudian dalam fungsi process_item dalam pipelines.py anda boleh melakukan perkara berikut

    Dengan cara ini, data yang berbeza boleh diproses secara berasingan,

    balas
    0
  • 天蓬老师

    天蓬老师2017-04-18 09:51:55

    Anda boleh menentukan perangkak yang mana hasilnya dalam perancangan:

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

    Untuk jenis perangkak berbilang dalam satu projek, perangkak yang berbeza perlu menggunakan logik yang berbeza dalam perancangan Pengarang scrapy menjelaskan perkara ini.
    Pergi dan lihat

    balas
    0
  • PHP中文网

    PHP中文网2017-04-18 09:51:55

    Ya, proses_item saluran paip mempunyai parameter labah-labah, yang boleh menapis labah-labah yang sepadan untuk menjalankan saluran paip ini

    balas
    0
  • Batalbalas