You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Puppeteer通过name属性获取元素的value值

Puppeteer通过name属性获取元素value值的正确方案

错误原因说明

  • 第一种写法错误:page.$() 接收的是合法CSS选择器,仅传入"InitiationTT"会被识别为匹配标签名为InitiationTT的元素,自然查询结果为null,调用方法时报错
  • 第二种写法错误:page.evaluate() 是异步方法,需要加await关键字等待执行完成,否则只会拿到未完成的Promise对象
  • 第三种写法错误:Node.js运行环境不存在浏览器端的document全局对象,浏览器DOM相关代码必须放在page.evaluate()的回调函数中执行

正确写法

写法1:先获取元素句柄再取值

如果需要后续操作该元素可以用该方式:

// 先等待元素加载完成,避免动态渲染场景查询为空
await page.waitForSelector('input[name="InitiationTT"]');
// 传入正确的CSS属性选择器匹配name属性
const cii = await page.$('input[name="InitiationTT"]');
const init = await page.evaluate(el => el.value, cii);

写法2:直接在浏览器上下文查询取值

仅需要取值的场景更简洁:

const init = await page.evaluate(() => {
  return document.querySelector('input[name="InitiationTT"]').value;
});

内容的提问来源于stack exchange,提问作者noobcode0000

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 22:45:04