puppeteer 表单提交 : evaluate is not a function

标签 puppeteer

该表单存在于页面中,我确信。

const form = await page.$('#my-form');
await form.evaluate(form => form.submit());

我收到此错误:
TypeError: form.evaluate is not a function

最佳答案

编辑 2019:正如凯尔所说,最新的 puppeteer 操纵者有 .evaluate method on elementHandle .毕竟已经两年了。

const tweetHandle = await page.$('.tweet .retweets');
expect(await tweetHandle.evaluate(node => node.innerText)).toBe('10');

你可以试试这个方法
await page.evaluate(() => {
 const element = document.querySelector("#my-form")
 element.submit()
});
ElementHandle没有 .evaluate功能属性。检查 docs .

关于puppeteer 表单提交 : evaluate is not a function,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46949910/

相关文章:

javascript - 如何单击包含文本的链接

node.js - Puppeteer - Chrome |无法打开 X 显示器 | Ubuntu 20.04

javascript - Puppeteer - 访问外部范围变量失败

javascript - 抓取一些表格数据时得到奇怪的输出

javascript - 从下拉列表中选择一个未使用 Puppeteer Select 实现的选项

node.js - 使用 xvfb headless : false 运行 Puppeteer

javascript - 基于属性错误的 Puppeteer 选择器

使用 Crawlera 代理的 Puppeteer

javascript - 在 puppeteer 中使用 xpath 选择下拉列表

javascript - 从页面列表中查找单词