我有一个条件,其中tr行生成动态值:
<tbody>
<tr id="24686" tabindex="0">
<td class="nowrap xh-highlight" style="padding: 3px 8px;">Available</td>
</tr>
</tbody>
我有Xpath 1:(// tbody / tr / td [contains(text(),'Available')])[1]返回
Available
和Xpath 2://返回的tr [1] / @ id
ld_9050427
22707
条件是我想生成一个xpath,它将返回状态为Available的第一个数字,然后返回其ID。以后我想使用相同的ID进行后续处理吗?
我尝试了类似下面的操作,但是没有用
(//tbody/tr[/@id and/td[contains(text(),'Disponible')]])[1]
答案 0 :(得分:1)
如果要选择具有tr
属性(任意)的id
和带有文本"Available"
的表格单元,请尝试
//tr[@id and td='Available']
要提取id
的值以供进一步使用,您需要get_attribute
/getAttribute
method
答案 1 :(得分:0)
要查找状态为可用的第一个号码,然后返回其ID,可以使用以下解决方案:
xpath :
"//tbody//tr//td[text()='Available']/.."
注1: xpath 中的..
指向祖先节点
注2:在寻找符合已实现条件的第一个匹配项时,您可以使用以下任一方法:
Python:
find_element_by_xpath()
Java:
findElement()
C#:
FindElement()
注3:最后,您必须使用getAttribute("id") / get_attribute("id")来提取id
属性的值,如下所示: