问题描述
请帮助获得三李中的两个。 我使用以下脚本:
import lxml.html
doc = lxml.html.document_fromstring("""
<ul>
<li>111</li>
<li>222</li>
<li>333</li>
</ul>
""")
lis = doc.xpath('//li')
i = 0
result = []
for elem in lis:
result.append(elem)
i = i + 1
if i > 1: break
print(result)
但我需要样本没有xpath-expression和循环,但只有xpath-expression。
1楼
您可以使用position()
来减少XPath结果集,例如:
result = doc.xpath('//li[position() <= 2]')
# [<Element li at 0x7f7728684530>, <Element li at 0x7f7728684590>]