当前位置: 代码迷 >> java >> 如何使用不同的搜索( cssSelector / tag / ClassName )创建元素的 Xpath
  详细解决方案

如何使用不同的搜索( cssSelector / tag / ClassName )创建元素的 Xpath

热度:78   发布时间:2023-07-31 10:59:35.0

我想使用不同的 cssSelector / tag / ClassName 找到一个元素,并让它们获取它的 xpath 值(更具体地说,我有一个网站,当一天发生变化时,其中一个类会改变它的类)这里是我该怎么做意思是:

<tr>
<td> 1.1.2019 </td>
<td> 2.1.2019 </td>
<td class="active"> 3.1.2019 </td>
<td> 4.1.2019 </td>
</tr>
<tr>
<td> </td>
<td> 10 </td>
<td> </td> #Here
<td> </td>
</tr>

我想根据那个“活动类”在哪里,点击它下面的表格。 不知道怎么做?

我想要的简短版本:

使用 cssSelector 查找元素

获取此元素的 Xpath <- 问题

使用编辑过的 xpath 单击它

我想获取 XPATH OF LOCATED ELEMENT ,而不是使用 Xpath 来定位它

您可以通过定位第一行中的所有<td>元素来找到索引,并检查其中一个有索引

List<WebElement> columns = driver.findElements(By.xpath("//tr[td[@class='active']]/td")); # just an example, can be any other locator
int index = 0;
for (int i = 0 ; i < columns.getSize() ; i++) {
    String attribute = columns.get(i).getAttribute("class")
    if (attribute != null && attribute.equals("active")) {
        index = i + 1;
    }
}
  相关解决方案