木偶。 waitForNavigation等待什么?

时间:2020-09-02 03:15:11

标签: puppeteer

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}}

1 个答案:

答案 0 :(得分:1)

Documentation说:

[page.waitForNavigation]在页面导航到新URL或重新加载时解析。当您运行将间接导致页面导航的代码时,此功能很有用。

例如,您填写一个表单,然后单击“提交”按钮,之后将显示一个包含结果的新页面。这样,您可以等到新页面加载完毕:

await Promise.all([
  page.waitForNavigation(),
  page.click('input[type=submit]'),
]);

如果您指示脚本等待导航,但没有导致导航,它将坐在那里等待超时。