Как перемещаться по элементам в lxml? - PullRequest
0 голосов
/ 26 марта 2012

Скажем, у меня есть дерево элементов, возвращаемое xquery

categories = tree.xpath(u"//ul[@class='tree-root']/li")

for cat in categories:
    catName = cat.find('span/span') # is there any shortcut for this?

Как видите, я использую find для доступа к элементам span. Вопрос в том, есть ли какой-нибудь ярлык для доступа к дочерним элементам с известным путем или найти единственный способ?

1 Ответ

2 голосов
/ 26 марта 2012

Вы можете использовать xpath() для элементов так же, как и для дерева:

span = cat.xpath('span/span')

К сожалению, я не смог найти ничего о более прямом доступе к элементам в документах.Они могут быть перебраны или доступны как элементы списка, но это не очень удобно.Класс Element предоставляет доступ только к атрибутам текущего элемента.

...