如何处理node.js puppeteer中的页面崩溃异常?

时间:2019-12-18 00:35:33

标签: javascript node.js exception puppeteer

有时,当我运行人偶脚本时,会出现“页面崩溃”错误。这很可能不是软件错误,而是与我正在使用的代理IP /我正在抓取的网页有关。因此,我真正想做的就是捕获错误,关闭当前页面,然后打开一个新页面。

但是,我的try catch块似乎无效。我的代码的结构如下:

try {
   //puppeteer code
}
catch(e) {
   console.log(‘caught error ‘ + e);
}

但是,当页面崩溃错误发生时,我看到的是“未处理的承诺拒绝错误”,而不是我的console.log消息。这是怎么回事?

1 个答案:

答案 0 :(得分:0)

来自here

page.on('error', msg => {
  console.error(...);
  throw msg ;
});

还建议您全局捕获代码中所有未捕获的错误:

process.on('unhandledRejection', error => {
  console.error(...);
  throw error;
});