2

我有一个返回 2 个结果的测试的查询。特别是使用找到的大纲的第 3 级

query = html("ul ol ul")

如何选择第一个或第二个无序列表?

query[0]

衰减为 HTMLElement

list(query.items())[0]

或者

query.items().next() #(in case of the first element)

有没有更好的方法我看不到?

笔记:

query = html("ul ol ul :first")

获取每个列表的第一个元素而不是第一个列表。

4

2 回答 2

4

有关 traversing 的 PyQuery 文档中,您应该能够使用以下命令选择第一个无序列表:

query('ul').eq(0)

因此,可以使用以下方法获得第二个无序列表:

query('ul').eq(1)
于 2014-04-14T23:04:48.773 回答
2

在 jQuery 中,人们会使用

html("ul ol ul").first()

.first() - 将匹配元素的集合减少到集合中的第一个。

或者

html("ul ol ul").eq(0)

.eq() - 将匹配元素集减少到指定索引处的元素。

于 2014-04-14T23:08:30.670 回答