我有以下代码来解析html表。如何在<td>
元素中检查指定的文本?这不起作用:val=doc.xpath('//tr/td[child::*[text()="Street :"]/span/text()')
。我只是在<span>
文字与'街道:'匹配时尝试提取<td>
文字。任何反馈都非常感谢!
import lxml.html as lh
html='''<tr>
<td>
Street : <span> High St. </span>
</td>
</tr>
<tr>
<td>
City : <span> Hightstown </span>
</td>
</tr>'''
doc=lh.fromstring(html)
#val=doc.xpath('//tr/td[child::*[text()="Street :"]/span/text()')
#street=doc.xpath('//tr/td/text()')
val=doc.xpath('//tr/td/span/text()')
#print street
print val
答案 0 :(得分:2)
>>> doc.xpath('//tr/td[contains(text(),"Street :")]/span/text()')
[' High St. ']