Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
具有多个条件和获取元素值的Selenium xpath_Selenium_Xpath - Fatal编程技术网

具有多个条件和获取元素值的Selenium xpath

具有多个条件和获取元素值的Selenium xpath,selenium,xpath,Selenium,Xpath,我有一个条件,其中tr行生成动态值: <tbody> <tr id="24686" tabindex="0"> <td class="nowrap xh-highlight" style="padding: 3px 8px;">Available</td> </tr> </tbody> Xpath 2://tr[1]/@id返回 Available ld_9050427 22707 条件是我想生

我有一个条件,其中tr行生成动态值:

<tbody>
   <tr id="24686" tabindex="0">
     <td class="nowrap xh-highlight" style="padding: 3px 8px;">Available</td>
   </tr>
</tbody>
Xpath 2://tr[1]/@id返回

Available 
ld_9050427
22707
条件是我想生成一个xpath,它将返回状态为可用的第一个数字,然后返回其ID。以后我想使用相同的ID进行后续处理

我试过下面这样的方法,但没用

(//tbody/tr[/@id and/td[contains(text(),'Disponible')]])[1]

要查找状态可用的第一个号码,然后返回其ID,可以使用以下解决方案:

xpath:

注1:。。在xpath中,引用祖先节点

注2:当您正在寻找与实现条件的第一个匹配时,您可以使用以下任一方法:

Python:

find_element_by_xpath()
爪哇:

C:

注3:最后,您必须使用/提取id属性的值,如下所示:

如果要选择具有任何id属性的tr和具有可用文本的表格单元格,请尝试


要提取id值以供进一步使用,您需要

确切的期望输出是什么?是否要按@id和子td的文本值选择表行?@Andersson id是动态生成的,我有三种状态可用、进行中和不可用。我想选择第一个状态可用的单元,然后获取其动态ID,该ID显示在tr行中。我正在寻找类似这样的内容//tbody/tr[/@ID和/td[containstext,'Availabel'][1]@PranjalPrakashSrivastava,如您所述……然后返回其ID。。。因此,您的最终目标是从中提取ID,例如24686。那你为什么要在这片土地上降落呢?是具有不同身份的孩子。有三种状态可用、进行中和不可用。所以我想选择第一个状态可用的单元,然后获取它的id,这样我就可以使用它的id进行进一步的使用。这就是我在ans中所说的。但是你从来没有提到你正在使用的语言绑定。您必须使用通过xpath查找元素
find_element_by_xpath()
findElement()
FindElement()
//tr[@id and td='Available']