Selenium и Python3 не нажимают на ссылку

Необходимо нажать с использованием selenium и Python3 на ссылку:

<span data-t="link:default" tabindex="0" class="Link Link_pseudo Link_view_default">У&nbsp;меня нет телефона</span>

Селектор, скопированный со страницы, следующий: #root > div > div.grid > div > main > div > div > div > form > div.human-confirmation-wrapper.can-switch > div > div:nth-child(2) > div > div.toggle-link.link_has-no-phone > span

Пробовал все варианты find_element...по отдельности и в цикле:

for element in driver.find_element_by_css_selector('span'):
    element.click()

Выдает ошибку:

---> 17 for element in driver.find_element_by_css_selector('span'):
     18     element.click()
     19 #driver.execute_script("arguments[0].click();",cl)
TypeError: 'WebElement' object is not iterable

Именно эту ссылку не ищет, находит другие span на странице. Возможно эта ссылка с оберткой и нужно применить js. Пробовал driver.execute_script("arguments[0].click();",cl), но на странице стоит защита от применения js наверно, так как выбрасывает на новую страницу с требованием включить js в хроме, хотя js включен.


Ответы (1 шт):

Автор решения: Albra

Удалось решить проблему:

from selenium.webdriver.common.action_chains import ActionChains

cl = driver.find_element_by_xpath("//div[@class='toggle-link link_has-no-phone']")
el = cl.find_element_by_xpath("//*[@id=\"root\"]/div/div[2]/div/main/div/div/div/form/div[3]/div/div[2]/div/div[1]/span")
ActionChains(driver).move_to_element(el).click(el).perform() 
→ Ссылка