如何使用XPath通过CSS类查找元素?

在我的网页中,有div一个class名为的Test

我如何找到它XPath

阳光小小2020/03/23 21:26:41

使用XPath 唯一正确方法:

//div[contains(concat(" ", normalize-space(@class), " "), " Test ")]

该函数将normalize-space去除前导和尾随空格,并且还将空格字符序列替换为一个空格。


注意

如果不需要许多这些Xpath查询,则可能需要使用一个将CSS选择器转换为XPath的库,因为CSS选择器通常比XPath查询更容易读写。例如,在这种情况下,您可以同时使用div[class~="foo"]div.foo获得相同的结果。

我已经找到了一些库:

古一2020/03/23 21:26:41

您可以找到类似此示例的元素(所有CSS元素)

private By 
allElementsCss = By.xpath(".//div[@class]");
神奇Davaid2020/03/23 21:26:41

具有空格的匹配

<div class="hello "></div>
//div[normalize-space(@class)="hello"]
Itachi阿飞2020/03/23 21:26:41

最简单的方法

//div[@class="Test"]

假设您要<div class="Test">按照描述查找