【问题标题】:Puppeteer - Click on tag behind textPuppeteer - 点击文本后面的标签
【发布时间】:2020-08-24 14:58:17
【问题描述】:

我对 puppeteer 很陌生,并且一直在尝试点击一个元素。图中,也就是“i”元素,我要点击。

当我尝试单击它时,我收到错误消息“节点不可见或不是 HTMLElement”。我猜它是不可见的,因为它前面有 nb 空间。

还有办法点击吗?当我手动点击它时,它可以工作,所以我认为puppeteer也可以做到?

谢谢, 本尼

【问题讨论】:

  • 你能显示一些代码吗?

标签: node.js puppeteer


【解决方案1】:

经过相当多的测试,我找到了一种点击它的方法。首先,这不起作用:

page.click(selector)

这引发了之前指定的错误。

现在起作用的是:

page.evaluate(function (selector) {

  const elements = document.querySelectorAll(selector);    
  elements.forEach((element) => {
    element.click();
  });

}, selector);

不确定为什么该元素会多次出现。它应该只出现一次。

我不是 puppeteer 方面的专家,但很高兴这能奏效。也许它可以帮助别人。

【讨论】:

    猜你喜欢
    • 2021-08-13
    • 2023-04-03
    • 2018-12-04
    • 2021-04-19
    • 2019-06-11
    • 1970-01-01
    • 2021-12-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多