我尽可能在 xpath 上使用 css 定位器。
我有以下 xpath 定位器,我想将其更改为 css:
//table[@id='service_schedule_sets']//a[text()='OptimalTest']
我想使用 CSS 定位器。我希望避免使用包含,因为在更高版本的 css 中存在支持问题(即 contains
已从 css2 和 css3 中删除(css2 删除是最后一分钟的事情) Selenium 掩盖了但我想避免。
我正在尝试:
css=table#service_schedule_sets a[.='OptimalTest')
但它没有找到该元素。
HTML 是:
<td>
<a href="service_schedule_sets/905">OptimalTest</a>
</td>
注意事项:
我想使用链接中的文本 ('OptimalTest') 而不是 href。 我不想使用 link=OptimalTest 方法,因为它不够具体。
最佳答案
CSS 选择器不支持基于文本内容的节点选择。
实际上有人建议使用伪类 :contains
来满足您的需求,但它是 removed来自 CSS 3 规范。
关于css - selenium - 如何在不使用 contains 运算符的情况下使用 css 而不是 xpath 单击基于其文本的链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17344459/