Я читал шпаргалки по xpath, такие как https://devhints.io/xpath, но не могу найти то, что я хочу сделать так, как предлагается.
Я работаю над страницей с более чем 100 блоками, подобными этому:
<tr role="row" class="odd"><td>
<div class="paradaContainer">
<a class="changue-paraderos" data-id="7" href="https://www.transmilenio.gov.co/loader.php?lServicio=Rutas&lTipo=busqueda&lFuncion=paradas&paradero=7">
<span class="fa fa-circle "></span>
<span>001A01 - Br. Rincón del Chicó</span>
</a><br>
<span class="fa fa-map-marker "></span><span>AC 100 - KR 13</span>
</div>
</td></tr>
Я хочу получить URL-адрес, содержащийся в атрибуте "href" , поэтому я использую следующий xpath в Google Chrome console:
$x("//tr/td/div/a[@class='changue-paraderos']/@href")
Вывод I wi sh:
https://www.transmilenio.gov.co/loader.php?lServicio=Rutas&lTipo=busqueda&lFuncion=paradas&paradero=7
Однако полученный вывод:
href
Итак, мой вопрос: как мне получить тип атрибута вместо самого атрибута? т.е. как мне получить URL-адрес вместо "href"?
Это может быть основной c вопрос, но он не работает с имеющейся у меня документацией.
Заранее спасибо.
Решил эту проблему. Я действительно получал вывод, который был вложен между широким спектром атрибутов. Затем я сначала получил все это, а на втором этапе я выбрал специфицированное c значение, которое хотел:
links_base = driver.find_elements_by_xpath ('// a [@ class = "changue-paraderos"] ')
for link in links_base: # Loop para obtener los 200 links por página
temp = str(link.get_attribute("href"))
links.append(temp)