【发布时间】:2020-11-05 10:10:09
【问题描述】:
我使用 Puppeteer 框架来自动化测试。 我需要根据文本找到一个元素:
await page.focus(//span[contains(text(), 'Name')]])
<span class="some_placeholder">Name</span>
<span class="some_placeholder">Phone Number</span>
但是在这种情况下会发生以下错误: “评估失败:DOMException:无法在文档''上执行'querySelector'不是一个有效的选择器..” span[class='name'] 成功找到了一些元素,但只需要一个元素。
focus() 接受 CSS 选择器,但不接受 contains() 或 text() 方法。
我应该如何正确编码搜索条件?
【问题讨论】:
-
这能回答你的问题吗? How to click on element with text in Puppeteer。如果您允许调用类似的方法
.click()而不是.focus(),则选择过程实际上是相同的,并且欺骗建议是此的规范线程。
标签: javascript puppeteer