我正在用操纵up编写网络爬虫。 我想启动几个chrome实例,并使它们连续运行。
但是我经常遇到一些例外,例如页面崩溃,“由于浏览器断开连接导致导航失败”,“会话已关闭。很可能页面已关闭”
我认为,我应该为每个进程启动一个chrome,并添加事件监听器以关闭自身,就像这样:
process.on("unhandledRejection", async (reason, p) => {
console.log('Unhandled Rejection at: Promise', p, 'reason:', reason);
await page.close().catch(error => console.log('caught', error.message))
await browser.close();
console.log('All closed!');
process.exit(0)
});
然后,我可以使用一些python脚本来启动和监视puppeteer(带有chrome)进程。 这是正确的方法吗?