Я использую много XPath при поиске элементов на веб-страницах с использованием Selenium, и совсем недавно перешел от использования node1 // node2 к использованию node1 / lower: :: node2. В чем разница между двумя методами? Один эффективнее другого?
Пример фрагмента XML для демонстрации:
<div id="books">
<table>
<tr><td class="title">Lord of the Rings</td><td class="author">JRR Tolkein</td></tr>
<tr><td class="title">The Hitch-Hikers Guide to the Galaxy</td><td class="author">Douglas Adams</td></tr>
</table>
</div>
Так было бы:
id('books')//td[@class='title']
или
id('books')/descendant::td[@class='title']