javascript - 如何使用 Puppeteer 和 Headless Chrome 通过文本选择元素

标签 javascript

如果我有一个如下所示的按钮:

<button type="button" class="list-group-item" style="cursor: pointer;">Button Text</button>

我正在尝试点击它:

await page.click(<button selector>)

如果我从 Chrome 开发工具复制选择器,我将无法使用获得的完整选择器,因为确切的选择器可能会发生变化。有没有办法可以根据按钮的文本来选择按钮?例如:

await page.click('Button Text')

我也不使用 JQuery,所以请记住这一点。

最佳答案

如果没有 jQuery,也许开销也少一点,你可以使用这个:

window.find("Button Text", true, false, true) 
? [window.getSelection()].map(_ => _.anchorNode).map(_ => _.childNodes.length
  ? _.click()
  : _.parentElement.click()
) : undefined;

关于javascript - 如何使用 Puppeteer 和 Headless Chrome 通过文本选择元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47023174/

相关文章:

javascript - 语法错误 : Unexpected token import. Webpack 配置

javascript - 如何修复不需要的侧滚动条?

php - 在javascript中调用url参数

javascript - 当网站想要使用计算机上的额外存储空间时,如何显示警报消息

javascript - 调试 YUI Javascript 错误

javascript - vueify:安装组件失败:模板或渲染函数未定义

javascript - JQuery Remove 在页面刷新后返回?

javascript - 提交时从 Rails 表单中删除必需的属性?

javascript - Chrome 中的 document.getElementById().innerText

javascript - 如何使用 Angular 工厂,$resource