我使用的是puppeteer,我需要不断刷新页面,直到请求的元素变为活动状态,"button“是我需要的元素。我试着等待,但它不工作,并给我这个错误:
Error: Unknown value for options.waitUntil: JSHandle@node
这就是我尝试过的
const [button] = await page.$x("//a[contains(., 'Denim')]");
if (button) {
await button.click();
}
await page.reload({ waitUntil: ["networkidle0", "domcontentloaded", button] });
发布于 2021-10-04 20:07:09
在这种情况下,错误是非常明显的。您正在告诉木偶人等待这3件事:["networkidle0", "domcontentloaded", button]
。前两个是可接受的选项。第三个不是。button
是对DOM元素的引用,您可以在木偶表演者代码中使用它。(或JSHandle@node
)。根据docs的说法,这不是一个可行的选择。
这里还有一点:您没有共享所有代码,所以我们必须假设这是在调用之间有某种超时的某种循环中发生的。按原样,此代码将检查此按钮,如果找到该按钮,则单击该按钮,然后恰好重新加载页面一次。在搜索一些反馈时,Reload
不会多次重新加载页面。它只重新加载一次。waitUntil
选项仅定义何时应解析返回的promise。
祝好运!
https://stackoverflow.com/questions/69424184
复制相似问题