如何从集合中获取一些项目?

时间:2014-03-10 09:01:08

标签: python xpath lxml

请帮助获得三个李中的两个。我使用以下脚本:

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和cycle进行采样,但只需要xpath-expression。

1 个答案:

答案 0 :(得分:3)

您可以使用position()来减少XPath结果集,例如:

result = doc.xpath('//li[position() <= 2]')
# [<Element li at 0x7f7728684530>, <Element li at 0x7f7728684590>]
相关问题