在一个 scrapy-spider 中抓取多个站点

发布于 01-20 11:49 字数 68 浏览 4 评论 0原文

我正在6种不同的蜘蛛中刮下6个站点。但是现在,我必须将这些站点刮在一个蜘蛛中。有没有一种方法可以在同一蜘蛛中刮擦多个链接?

I am scraping 6 sites in 6 different spiders. But now, I have to scrape these sites in one single spider. Is there a way of scraping multiple links in the same spider??

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

も星光2025-01-27 11:49:39

我这样做是通过

def start_requests(self):
  yield Request('url1',callback=self.url1)
  yield Request('url2',callback=self.url2)
  yield Request('url3',callback=self.url3)
  yield Request('url4',callback=self.url4)
  yield Request('url5',callback=self.url5)
  yield Request('url6',callback=self.url6)
  

I did this by

def start_requests(self):
  yield Request('url1',callback=self.url1)
  yield Request('url2',callback=self.url2)
  yield Request('url3',callback=self.url3)
  yield Request('url4',callback=self.url4)
  yield Request('url5',callback=self.url5)
  yield Request('url6',callback=self.url6)
  
厌味2025-01-27 11:49:39
import spider1
import spider2
import spider3
from scrapy.crawler import CrawlerProcess

if require_spider1:
  spider = spider1
  urls = ['https://site1.com/']
elif require_spider2:
  spider = spider2
  urls = ['https://site2.com/', 'https://site2-1.com/']
elif require_spider3:
  spider = spider3
  urls = ['https://site3.com']

process = CrawlerProcess()
process.crawl(spider, urls=urls)
process.start()
import spider1
import spider2
import spider3
from scrapy.crawler import CrawlerProcess

if require_spider1:
  spider = spider1
  urls = ['https://site1.com/']
elif require_spider2:
  spider = spider2
  urls = ['https://site2.com/', 'https://site2-1.com/']
elif require_spider3:
  spider = spider3
  urls = ['https://site3.com']

process = CrawlerProcess()
process.crawl(spider, urls=urls)
process.start()
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文