[英]Unable to access the element using Selenium , Python and ChromeDriver
[英]Using Selenium Chromedriver with python how do i click this element?
我希望能夠在 Yandex 帳戶注冊頁面中單擊此元素。
我正在使用 Selenium Chromedriver 和 python。
https://passport.yandex.com/registration/
我試過這段代碼
element = self.driver.find_element_by_class_name("toggle-link.link_has-no-phone").click()
webdriver.ActionChains(self.driver).move_to_element(element).click(element).perform()
但我得到 ElementClickInterceptedException。
有一個element.click().perform()
您還可以向元素發送一個Return
鍵
from selenium.webdriver.common.keys import Keys
element = ... # get your element
element.send_keys(Keys.RETURN) # or send a left mouse click
看起來您查找元素的方式是錯誤的,該元素有兩個類,並且您嘗試同時指定兩者 -> find_element_by_class_name 僅采用一個 class 屬性值。
所以,這應該適合你
driver.find_element_by_class_name('link_has-no-phone').click()
不知道你為什么在這里使用ActionChains
,而你可以簡單地點擊上面提到的鏈接。
簡化代碼
self.driver.find_element_by_class_name("toggle-link.link_has-no-phone").click()
或者
element = self.driver.find_element_by_class_name("toggle-link.link_has-no-phone")
element.click()
或者
driver.find_element_by_css_selector('.toggle-link.link_has-no-phone').click()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.