gpt4 book ai didi

javascript - 使用 Puppeteer 单击后检测 POST 响应到达

转载 作者:行者123 更新时间:2023-11-30 14:34:47 27 4
gpt4 key购买 nike

我正在尝试从表格中获取信息,但该表格有一个分页按钮(“下一个,上一个”)。当我点击下一步按钮时,没有导航发生;它只是创建一个返回新 HTML 表格的 POST 请求。

当我单击导致 POST(不是导航)的下一个按钮时,我如何才能等待此 POST 完成,然后再尝试从下一页再次捕获数据?

也许我可以检测到表格元素中的一些变化,但我不知道如何做。

解决这个问题的最佳方法是什么?

现在我正在这样做:

while (await page.$(NEXT_BUTTON_SELECTOR) !== null) {
await page.click(NEXT_BUTTON_SELECTOR);
await page.waitFor(2 * 1000);
pageTableArray = getData();
}

但我不认为这是一个好方法。

最佳答案

如果 await page.click(NEXT_BUTTON_SELECTOR); 导致页面加载发生,那么脚本中接下来发生的任何事情都会丢失。要解决这个问题,您必须这样做:

page.click(NEXT_BUTTON_SELECTOR); // Notice no `await`
await page.waitForNavigation();

docs page here 查看有关该 API 的更多信息!

关于javascript - 使用 Puppeteer 单击后检测 POST 响应到达,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50593232/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com