1

HTMLテーブルを解析する次のコードがあります。<td>要素内の指定されたテキストを確認するにはどうすればよいですか? これは機能しません: val=doc.xpath('//tr/td[child::*[text()="Street :"]/span/text()'). テキストが「Street :」に一致<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
4

1 に答える 1

2
>>> doc.xpath('//tr/td[contains(text(),"Street :")]/span/text()')
[' High St. ']
于 2012-05-18T19:19:43.623 に答える