我在为以下 HTML 创建 Xpath 时遇到问题:
<html>
<body>
<table class="tablesorter">
<tbody>
<tr class="tr_class">
<td>{some td info}</td>
<td>{some td info}</td>
<td>
<span class="span1">
<span class="span2">Out</span>
<span class="span3">SMTH</span>
<span class="span4">Out</span>
</span>
</td>
</tr>
<tr class="tr_class">
<td>{some td info}</td>
<td>{some td info}</td>
<td>In</td>
</tr>
<tr class="tr_class">
<td>{some td info}</td>
<td>{some td info}</td>
<td>In</td>
</tr>
</tbody>
</table>
</body>
</html>
我想要的是创建 Xpath,它将返回我每三个 td 节点的内容(如果它没有子节点)或它的具有 class="span2" 的 span 的内容。例如,对于这个 html,它应该返回
Out,In,In
我有 Xpath 将返回所需的跨度节点,它看起来像:
//table[@class = 'tablesorter']//td[3]/descendant::*[@class='span2']/text()
我有 Xpath,它将返回每个 3d td 节点的简单内容:
//table[@class = 'tablesorter']//td[3][count(descendant::*)=0]/text()
但我只需要一个 Xpath,因为对我来说,有必要对“输入”或“输出”值进行正确排序(它们在表中的排序)