Здравствуйте, возникла непонимание как работает xpath в lxml.
import lxml.html as parser
text = '''
<div id="main">
<div>
<a href="#">1</a>
</div>
<div>
<a href="#">2</a>
</div>
<div>
<a href="#">3</a>
</div>
<div>
<a href="#">4</a>
</div>
</div>
'''
def get_info():
html = parser.document_fromstring(text)
divs = html.xpath('//div[@id="main"]/div')
print(len(divs))#4
div = divs[0].xpath('///a')
print(len(div))#4
if __name__ == '__main__':
get_info()
Первый xpath выдает все правильно. 4 div есть в html коде.
Почему тогда, когда я ищу с помощью xpath в div, то xpath опять ищет по всему html коду, а не относительно заданного div? Как сделать правильно?