Как выбрать несколько элементов по положению с помощью XPath?

У меня есть следующий код XPath, который выбирает элементы на следующем веб-сайте:

XPath-код:

//div[@title='buyer-info']

веб-сайт: http://econpy.pythonanywhere.com/ex/001.html

Чтобы выбрать первый элемент возвращаемых элементов, я бы использовал:

(//div[@title='buyer-info'])[1]

Я хотел бы выбрать 4-й до последнего элемента. Я предполагаю, что код XPath будет выглядеть примерно так:

(//div[@title='buyer-info'])[4:last()]

Однако это недопустимый запрос XPath.


person JM Nel    schedule 19.06.2017    source источник


Ответы (1)


Вам просто нужно проверить значение position():

Функция position возвращает число, равное контекстной позиции из контекста вычисления выражения.

(//div[@title='buyer-info'])[position() >= 4]
person alecxe    schedule 19.06.2017