Я пытаюсь получить ссылки со страницы с xpath.Проблема в том, что мне нужны только ссылки внутри таблицы, но если я применю выражение xpath ко всей странице, я получу ссылки, которые мне не нужны.
Например:
tree = lxml.html.parse(some_response)
links = tree.xpath("//a[contains(@href, 'http://www.example.com/filter/')]")
Проблема в том, что выражение применяется ко всему документу.Я нашел нужный элемент, например:
tree = lxml.html.parse(some_response)
root = tree.getroot()
table = root[1][5] #for example
links = table.xpath("//a[contains(@href, 'http://www.example.com/filter/')]")
Но, похоже, он выполняет запрос и во всем документе, так как я все еще собираю ссылки за пределами таблицы. На этой странице говорится, что "Когда xpath () используется в элементе, выражение XPath оценивается по элементу (если относительный) или по отношению к корневому дереву (если абсолютный):"Итак, что я использую, это абсолютное выражение, и мне нужно сделать его относительным?Это так?
По сути, как я могу фильтровать только элементы, которые существуют внутри этой таблицы?