如何解决`page.goto` 超时后,Puppeteer `page` 对象不起作用?
我多次运行以下代码,page.goto
大部分时间超时,然后代码的后面部分(从 NOTE 开始)根本没有成功执行,即我看不到 contentSize = ...
打印到控制台。
但是如果 page.goto
没有超时,那么我可以看到 contentSize = ...
打印出来。
那么如果 page
超时,.goto
对象就不能正常工作?
import pptr from "puppeteer"; // version = 10.1.0
async function main(args) {
let browser = await pptr.launch({
headless: false,defaultviewport: null,args: [
"--user-data-dir=/tmp/user_data/","--window-size=1200,1080",]
});
const url = "https://venturebeat.com/";
let page = await browser.newPage();
page.on('console',consoleObj => console.log(consoleObj.text()));
await page.goto(url,{ waitUntil: "networkidle2",timeout: 10000 })
.catch(err => console.log(`page.goto rejected,err: ${err}`)),console.log(`stop loading`);
// NOTE: seems stuck here forever?
let contentSize = (await page.content()).length;
console.log(`content size = ${contentSize}`);
};
main();
在 puppeeter 源代码中添加了许多 console.log
后,似乎它实际上卡在了 the code here。
更新:奇怪的是,在我从 Chromium 切换到 Chrome 后,问题似乎消失了。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。