例如
<tr><th>sample1</th><th>sample2</th></tr><tr<td>data1</td><td>data2</td></tr>
在上表中,我们没有任何属性值。但是他们只有TagName。从中我们可以找到所有它们的唯一xpath。我尝试使用xpath之类的
//tr[not(@class) and not (@id)]
但是通过使用它们,它们可以获取所有tr .so,从而我们可以找到唯一的xpath。请任何人通过一些演示立即知道答案的更新...
答案 0 :(得分:0)
属性值很方便,但在XPath中选择数据不是必需的。
例如,对于您的XML,为了便于阅读而格式化并固定为格式正确,
<table>
<tr>
<th>sample1</th>
<th>sample2</th>
</tr>
<tr>
<td>data1</td>
<td>data2</td>
</tr>
</table>
以下每个XPath表达式,
/table/tr[2]/td[2]
//td[.='data2']
//td[.='data1']/following-sibling::td[1]
//tr[2]/td[count(../../tr/th[.='sample2']/preceding-sibling::th)+1]
将选择
<td>data2</td>
不依赖属性值。
另请参见