用于根据文本获取 Web 元素的 Css 选择器

标签 css selenium selenium-webdriver css-selectors

下面是页面的dom结构:

enter image description here

我试过了

button:contains("srave")

我也试过

button[innerText="srave"]
button[text="srave"]`    
button[innerHtml="srave"]`

它们都不起作用。

需要在未定义元素属性时获取元素的方法。 PS: textContent() 返回 srave 作为结果。

编辑:

我在页面上有很多这样的按钮元素。我知道我可以遍历所有这些并检查文本。但是我想直接根据它包含的文本获取web元素以减少执行时间

最佳答案

您是否尝试过:button[class='k-button k-button-icontext'] 或 button[dir='ltr'] 我不认为您在示例中尝试的 cssSelectors 是正确的,因为您将 button 复数化.如果这些都不起作用,则可能是页面上有多个按钮具有相同的选择器。在这种情况下,使用 xpath 可能会更好,或者您可以获得具有相同选择器的所有元素的列表,然后从您创建的列表中获取任何一个并单击它。

关于用于根据文本获取 Web 元素的 Css 选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44651886/

相关文章:

javascript - 随着用户向下滚动逐渐改变导航背景

javascript - 如何让页脚从 DOM 的第 3 页开始

html - 如何将文本/标题放在图像上?

python - Selenium 的最佳测试量

python - Chromedriver 文本文件忙

python - 如果元素不存在,selenium 中的条件语句

java - 在 Docker 中运行 Selenium 测试时出现连接被拒绝的 UnreachableBrowserException

java - 如何使用 webdriver 选择 Selenium 中的 Angular 网格 Controller 行?

android - Ionic 2 NavBar 图标正确的奇怪问题

javascript - 解决缓慢的 headless 浏览器渲染 html、javascript 到 python 中的屏幕截图图像的解决方案?