有时,当我运行人偶脚本时,会出现“页面崩溃”错误。这很可能不是软件错误,而是与我正在使用的代理IP /我正在抓取的网页有关。因此,我真正想做的就是捕获错误,关闭当前页面,然后打开一个新页面。
但是,我的try catch块似乎无效。我的代码的结构如下:
try {
//puppeteer code
}
catch(e) {
console.log(‘caught error ‘ + e);
}
但是,当页面崩溃错误发生时,我看到的是“未处理的承诺拒绝错误”,而不是我的console.log消息。这是怎么回事?
答案 0 :(得分:0)
来自here:
page.on('error', msg => {
console.error(...);
throw msg ;
});
还建议您全局捕获代码中所有未捕获的错误:
process.on('unhandledRejection', error => {
console.error(...);
throw error;
});