如何使用 xPath 在 Puppeteer 中单击元素

Joz*_*ott 11 google-chrome node.js puppeteer

我想在不使用 css 选择器的情况下单击一个元素。

await page.click()
Run Code Online (Sandbox Code Playgroud)

使用选择器来标识元素。


那么我该怎么做呢?

await page.click('/*[@id="toc"]/ul/li[1]/a')
Run Code Online (Sandbox Code Playgroud)

Joz*_*ott 23

首先,我必须通过使用来获取元素

await page.$x('<xPath>')
Run Code Online (Sandbox Code Playgroud)

它返回一个包含元素的数组。要单击,我必须选择数组中的第一个元素。

const elements = await page.$x('<xPath>')
await elements[0].click() 
Run Code Online (Sandbox Code Playgroud)

  • 您好,通过使用上面的代码,得到“类型错误:无法读取未定义的属性“单击”。” 你能帮我解决这个问题吗? (3认同)