我有这个 html 代码:
<table>
<tr>
<td class="test"><b><a href="">aaa</a></b></td>
<td class="test">bbb</td>
<td class="test">ccc</td>
<td class="test"><small>ddd</small></td>
</tr>
<tr>
<td class="test"><b><a href="">eee</a></b></td>
<td class="test">fff</td>
<td class="test">ggg</td>
<td class="test"><small>hhh</small></td>
</tr>
</table>
我使用这个 Python 代码<td class="test">
通过 lxml 模块提取所有内容。
import urllib2
import lxml.html
code = urllib.urlopen("http://www.example.com/page.html").read()
html = lxml.html.fromstring(code)
result = html.xpath('//td[@class="test"][position() = 1 or position() = 4]')
效果很好!结果是:
<td class="test"><b><a href="">aaa</a></b></td>
<td class="test"><small>ddd</small></td>
<td class="test"><b><a href="">eee</a></b></td>
<td class="test"><small>hhh</small></td>
(所以每个的第一列和第四列<tr>
)现在,我必须提取:
aaa(链接的标题)
ddd
<small>
(标签之间的文本)eee(链接的标题)
hhh
<small>
(标签之间的文本)
我怎样才能提取这些值?
(问题是我必须删除<b>
标签并在第一列获取锚的标题并在第四列删除<small>
标签)
谢谢!