Node.js 木偶是高效的还是节点爬虫?

Node.js 木偶是高效的还是节点爬虫?,node.js,puppeteer,node-crawler,Node.js,Puppeteer,Node Crawler,首先,我知道网络爬虫和网络自动化工具之间的区别 我正在运行一个爬虫程序,它涉及从特定域获取数据。我将尝试解释这个场景 步骤1: 使用Puppeter运行chrome headless并进入域名 步骤2: 键入搜索关键字并按enter键。等待结果,收集搜索结果数组,并从数组中提取链接 步骤3: 对于每个链接,创建新页面并转到链接。等待页面加载,然后从中提取数据 对于项目的需求,这些步骤必须在nodejs中并行运行。所以我决定用 .我试图通过事件管理器来识别工作人员之间的链接 瓶颈: 每个工作人员需

首先,我知道网络爬虫和网络自动化工具之间的区别

我正在运行一个爬虫程序,它涉及从特定域获取数据。我将尝试解释这个场景

步骤1: 使用Puppeter运行chrome headless并进入域名

步骤2: 键入搜索关键字并按enter键。等待结果,收集搜索结果数组,并从数组中提取链接

步骤3: 对于每个链接,创建新页面并转到链接。等待页面加载,然后从中提取数据

对于项目的需求,这些步骤必须在nodejs中并行运行。所以我决定用 .我试图通过事件管理器来识别工作人员之间的链接

瓶颈:

每个工作人员需要再次运行Puppeter实例并创建新页面,然后转到链接并执行爬行操作

问题来了。我认为,如果每个工人都运行一个pupeeter实例,而木偶师自己在其中运行一个chrome实例,那么这将是一个巨大的成本

所以我提出了一个非常简单的解决方案:使用一个包,而不是像Puppeter或selenium这样的自动化工具。 但就我而言。我需要爬网的域有问题。我需要爬网的数据还没有准备好,因为它来自ajax调用,爬网程序无法检测到数据

所以我的问题是:

第一个问题:是否有可能让木偶演员在集群模式下高效表演

第二个问题:


如果我使用“如何判断等待数据来自ajax调用”

你试过Puppeter Cluster吗?@hardkoded tnx alot这对我来说是一个巨大的帮助。任何不使用chromium的东西都会更有效率,但通常都不能轻松创建现代网站。