Selenium之拖拽滾動條


圖例:橫向滾動條拖拽

 

 

 

(1)通過左邊控制橫向和縱向滾動條scrollTo(x, y)

js = "window.scrollTo(100,400)"
driver.execute_script(js)

(2)然而用上面的方法可以解決拖動滾動條的位置問題,但是有時候無法確定我需要操作的元素在什么位置,有可能每次打開的頁面不一樣,元素所在的位置也不一樣,怎么辦呢?同樣需要借助JS去實現跳到目標元素出現的位置(如圖例“修改”按鈕):

 具體如下:

# # 方式二:JS操作移位到指定目標元素
# targetChange=driver.find_element_by_xpath("//*[contains(text(),'修改')]")
# driver.execute_script("arguments[0].scrollIntoView()",targetChange)

(3)利用actionChains實現DIV滾動條的拖拽
#方式三:action_chains拖拽進度條至偏移位置
# dragElement=driver.find_element_by_xpath("//div[contains(@class,'el-table__body-wrapper is-scrolling')]")
# action_chains = ActionChains(driver)
# action_chains.drag_and_drop_by_offset(dragElement,0,2000)

針對豎向滾動條,拖拽也要借助JS進行操作

(1)滾動條回到頂部:
js="var q=document.getElementById('id').scrollTop=0"
driver.execute_script(js)

 
        

(2)滾動條拉到底部
js="var q=document.documentElement.scrollTop=10000"
driver.execute_script(js)





免責聲明!

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



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