Как получить ссылку href в Python Selenium - PullRequest
1 голос
/ 19 апреля 2020

Я новичок в Selenium и занимаюсь веб-очисткой сайта, так как хочу получить все ссылки href для тега.

Я использовал приведенный ниже код, но не смог получить ссылку href. Он отображает javascript: в качестве вывода.

driver.find_element_by_css_selector('div.clFx>a').get_attribute('href')

В другом коде это работает нормально, но здесь это ничего не показывает, я также прикрепляю изображение области элемента проверки, где я хочу получить ссылку href.

Я также проверил некоторые ответы в Stack Overflow и использовал тот же код, но я не могу его получить.

<div class="clFx">
::before
<a class="userName name" href="https://resdex.naukri.com/v2/preview/preview?uniqId=6f44e0e0b95503a44378054b64bdb1cc580e0f001e115d110418475f5808004f130d020214495f5e0b544e170d6&amp;sid=3922138883&amp;paramString=2faf4d57a73f0d419d15309cbc9f5f67134f5108084a5746754e034a571b2513445055524d51250c4b0a1f57504f54030c6&amp;hfFlowName=search&amp;commentSearchType=comment-my,comment-others" target="_blank">Bhimanagoud Patil</a>
::after
</div>

Приведенная выше ссылка href Я хочу ее получить.

Я включил ниже изображение проверяющего элемента:

enter image description here

Ответы [ 2 ]

0 голосов
/ 20 апреля 2020

Вы также можете использовать xpath следующим образом:

driver.find_element_by_xpath('//div[@class="clFx"]/a').get_attribute('href')
0 голосов
/ 19 апреля 2020

Вы можете напрямую использовать тег привязки, чтобы получить атрибут href, связанный с ним. Он объявляется в интерфейсе веб-элемента и возвращает значение атрибута веб-элемента в виде строки

   wait = WebDriverWait(driver, 20)
   element= wait.until(EC.element_to_be_clickable((By.LINK_TEXT, "Bhimanagoud Patil"))).get_attribute("href")
   print element

или

wait = WebDriverWait(driver, 20)
element= wait.until(EC.element_to_be_clickable((By.XPATH, "//a[@class='userName name']"))).get_attribute("href")
print element

Примечание: добавьте ниже импорт в ваше решение

from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...