请帮我xpath

时间:2011-03-13 05:05:35

标签: xml xpath html-parser

  

可能重复:
  if you know xpath then please help?

喜 所以这里是html代码

<html>
<body>
<table>
<tr>
Test
</tr>
<tr> 
<td>
<a href = "google.com">
Google
</a>
</td>
</tr>

<tr>
<td> test1</td>
<td> 
<a href = "yahoo.com"> Yahoo!</a>
</td>
</tr>


</tr>
</table>

</body>
</html>

所以现在我想要Google和Yahoo!

我怎么能得到那个

这是我写的

table[1]/tr[1]/td[2]

我不知道发生了什么但没有出现......

感谢

2 个答案:

答案 0 :(得分:0)

如果您知道将始终存在该数量和类型的元素:

/html/body/table/tr/td/a/

更通用的方法是:

html//a

答案 1 :(得分:0)

您正在寻找的XPath如下:

对于谷歌

/html/body/table/tr[2]/td/a/text()

对于雅虎

/html/body/table/tr[3]/td/a/text()

由于标题包含在'a'元素中,并且您使用text()节点类型test来获取'a'元素的文本值。

实际上我认为你的html底部有一个额外的</tr>,这使其无效