2013-10-05 128 views
2

我想提取一个给定的HTML这是这种形式的城市和国家的XPath提取HTML标签

<table class="wikitable sortable"> 
<tr> 
<th>Name of City/Town</th> 
<th>Name of State</th> 
<th>Classification</th> 
<th>Population (2001)</th> 
<th>Population (2011)</th> 
</tr> 
<tr> 
<td><a href="/wiki/Abhayapuri" title="Abhayapuri">**Abhayapuri**</a></td> 
<td><a href="/wiki/Assam" title="Assam">**Assam**</a></td> 
<td>TC</td> 
<td style="text-align:right;">14,673</td> 
<td style="text-align:right;"></td> 
</tr> 

我试着这样做 $x('//table/tbody/tr/td/a')

但其返回我不想要的结果(即列表包含ChileNodes,children,classList,innerHTML和其他元数据)。不知道我在做什么错

回答

3

这个XPath:

$x('//table/tbody/tr/td/a/text()') 

将让你的城市和国家:

["**Abhayapuri**", "**Assam**"] 

此XPath会得到你的城市:

$x('//table/tbody/tr/td[1]/a/text()') 

["**Abhayapuri**"] 

而这个XPath会为你指定状态:

$x('//table/tbody/tr/td[2]/a/text()') 

["**Assam**"]