Ste*_*all 1 ide selenium xpath html-table multiple-columns
请看下面的html片段:
<tr class="clickable">
<td id="7b8ee8f9-b66f-4fba-83c1-4cf2827130b5" class="clickable">
<a class="editLink" href="#">Single</a>
</td>
<td class="clickable">£14.00</td>
</tr>
Run Code Online (Sandbox Code Playgroud)
当td [1]包含"Single"时,我试图断言td [2]的值.我尝试了各种各样的变种:
//td[2][(contains(text(),'£14.00'))]/../td[1][(contains(text(),'Single'))]
我在其他地方成功地使用了类似的符号 - 但在这里无济于事......我认为这是由于嵌套元素的td [1],但不确定.
有人可以启发我的错误吗?:)
干杯!
关于什么:
//tr[contains(td[1], "Single")]/td[2]
Run Code Online (Sandbox Code Playgroud)
首先选择<tr>
包含<td>
匹配文本,然后选择td[2]
.
然后,
contains(//tr[contains(td[1], "Single")]/td[2], "£14.00")
Run Code Online (Sandbox Code Playgroud)
应该回来True
.
或者,更接近您尝试的表达式,您可以测试它是否匹配:
//tr[contains(td[1], "Single")]/td[2][contains(., "£14.00")]
Run Code Online (Sandbox Code Playgroud)
请参阅@ JensErat的回答,找到xth td,其中td包含在同一个tr xpath python中.