可以利用selenium的 browser.execute_script('JS方法')來實現。舉例如下:
想點擊網頁的登錄按鈕時,發現由於網頁沒有最大化導致元素隱藏定位失敗,這里不用maximize_window(),我們用執行JS的方法來實現下。
由於網頁沒有被最大化,元素被隱藏:
具體執行步驟如下:
1.可以先在console下利用JS方法:window.scrollBy()方法來查看多大比例合適:
2.利用selenium的browser.execute_script()方法來執行上面的JS方法:
browser.execute_script('window.scrollBy(200,0)')
1 from selenium import webdriver 2 browser = webdriver.Chrome() 3 browser.implicitly_wait(3) 4 #打開網頁# 5 browser.get('https://music.163.com/#/discover/toplist')
7 #向右移動頁面# 8 browser.execute_script('window.scrollBy(200,0)') 9 10 #獲取登錄按鈕並進行點擊# 11 browser.find_element_by_xpath('//a[@class="link s-fc3"]').click()