【问题标题】:How to click element in Puppeteer using xPath如何使用 xPath 在 Puppeteer 中单击元素
【发布时间】:2020-09-17 02:41:34
【问题描述】:

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

await page.click()

使用选择器来识别元素。


那么我该怎么做呢?

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

【问题讨论】:

    标签: node.js google-chrome puppeteer


    【解决方案1】:

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

    await page.$x('<xPath>')
    

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

    const elements = await page.$x('<xPath>')
    await elements[0].click() 
    

    【讨论】:

    • 嗨,通过使用上面的代码,得到“类型错误:无法读取未定义的属性'click'。”你能帮我解决这个问题吗?
    • @Explorer 可能您的 xPath 没有选择元素。
    • 当我遇到该类型错误时 - 我正在做选择器并立即访问元素:await page.$x('&lt;xPath')[0].click() - 当我将其分解为两个等待时,错误消失了。 @Explorer - 您是否遵循代码示例?
    猜你喜欢
    • 2019-09-18
    • 1970-01-01
    • 1970-01-01
    • 2020-07-17
    • 2021-02-02
    • 1970-01-01
    • 2023-02-04
    • 2019-11-16
    • 1970-01-01
    相关资源
    最近更新 更多