python+selenium 定位到元素,無法點擊的解決方法


1、嘗試下拉一段滾動條,讓按鈕能看到

1
2
3
4
js = "window.scrollTo(100,450)"
driver.execute_script(js)
 
driver.find_element_by_css_selector( "div.loginForm>input#loginBtn" ).click()

OK,能點到了

2、不是下拉加載的頁面,用方法一有點傻,嘗試讓滾動條定位到指定元素位置

1
2
3
4
the_loginBtn = driver.find_element_by_css_selector( "div.loginForm>input#loginBtn" )
ActionChains(driver).move_to_element(the_loginBtn).perform()
 
driver.find_element_by_css_selector( "div.loginForm>input#loginBtn" ).click()

ok,滾動到元素位置了。但是這個按鈕在頁面頂格顯示,這個頁面有導航欄,要點擊的按鈕被固定的導航欄擋住了。還是報錯。

3、元素被覆蓋,無法點擊

用Enter代替click

1
driver.find_element_by_css_selector( "div.loginForm>input#loginBtn" ).send_keys(Keys.ENTER)

要導入from selenium.webdriver.common.keys import Keys,不然用不了

發現用Enter代替click后,如果不是下拉加載的頁面的話,不用下拉滾動條就能用enter點到


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM