使用Apify Puppeteer爬行时出现内存问题

问题描述 投票:0回答:1

我一直在研究一个Python项目,其中用户为该程序提供了很长的URL列表(比如说100个URL),该程序将产生100个进程来执行包含爬虫代码的JavaScript代码(使用[C0 ])。此外,基于Apify Puppeteer单页模板创建和修改JavaScript代码。

但是,由100个进程同时调用爬网代码会占用大量内存,这会导致滞后。由于Python代码正在等待从JavaScript代码编写的文件中读取结果,因此内存不足会极大地影响性能,并在文件写入时引发错误。我想知道是否有任何方法可以优化JavaScript搜寻器代码,或者双方都可以进行任何改进?

javascript python web-crawler puppeteer apify
1个回答
0
投票
完全不需要100个单独的爬网过程。 Apify提供的搜寻器类可以抓取列表或将URL排满。它们还管理并发性,因此运行不会超出CPU和内存限制。我们通常会抓取数百万个URL,而不会出现明显的内存或CPU问题。我会用Apify.launchPuppeteer()
© www.soinside.com 2019 - 2024. All rights reserved.