单击筛选结果的按钮时,Puppeter超时超过3000ms



我的代码:

const puppeteer = require("puppeteer");
(async () => {
try {
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto("https://www.genglobal.org/member-directory");
await page.type("#edit-field-first-name-value", "Abbas");
await page.type("#edit-field-last-name-value", "AL ASMAR");
await page.click(".agree-button.eu-cookie-compliance-secondary-button");
const [submitSearch] = await Promise.all([
page.waitForNavigation(),
page.click("#edit-submit-member-directory"),
]);
await page.screenshot({ path: "screenshot.png" });
await browser.close();
} catch (error) {
console.log(`this is the ${error}`);
}
})();

错误:

this is the TimeoutError: Navigation timeout of 30000 ms exceeded

我正在努力实现的目标:

在相应的输入字段中输入名字和姓氏,然后单击FILTER按钮。然而,当我通过点击FILTER按钮提交表单时,它会给我上面提到的错误。我不明白为什么。。。

我使用下列命令解决了这个问题。

page.setDefaultNavigationTimeout(100000);

将导航时间设置为10秒。

问候

如果我理解正确的话,page.waitForNavigation()涉及URL更改,而filter按钮只使用AJAX请求并修改DOM。您可以尝试page.waitForResponse()page.waitForSelector()

最新更新