waitForBrowserToLoad
正在等待什么“导航”?
网站导航?浏览器刷新图标“导航”以完成旋转吗?
还是这只是一个笨拙的方法,应该命名为await this.page.waitForNavigation();
?
但是,当我使用它时,就像这样:
waitForNavigation
页面完成加载。
但它从未解决。我不确定为什么。
async function beforeScrape(page) {
//code gets this far
await this.page.waitForNavigation();
//never resolves
await page.click(".table-header");
}
还等什么?
{{1}}
答案 0 :(得分:1)
[page.waitForNavigation]在页面导航到新URL或重新加载时解析。当您运行将间接导致页面导航的代码时,此功能很有用。
例如,您填写一个表单,然后单击“提交”按钮,之后将显示一个包含结果的新页面。这样,您可以等到新页面加载完毕:
await Promise.all([
page.waitForNavigation(),
page.click('input[type=submit]'),
]);
如果您指示脚本等待导航,但没有导致导航,它将坐在那里等待超时。