selenium沒有控制頁面滾動的方法,這時候只能借助js了,selenium提供了乙個操作js的方法:
execute_script(),可以直接執行js的指令碼。
js="var q=document.getelementbyid(『id『).scrolltop=0"driver.execute_script(js)
scrolltop是右側高度滾動,y軸滾動
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)
3.這裡可以修改scrolltop 的值,來定位右側滾動條的位置,0是最上面,10000是最底部。
js="var q=document.documentelement.scrolltop=5000"
driver.execute_script(js)
x軸滾動
1.有時候瀏覽器頁面需要左右滾動(一般螢幕最大化後,左右滾動的情況已經很少見了)。2.通過左邊控制橫向和縱向滾動條scrollto(x, y)
js = "window.scrollto(100,400);"
driver.execute_script(js)
3.第乙個引數x是橫向距離,第二個引數y是縱向距離
其他一些滾動
# 移動到元素element物件的「頂端」與當前視窗的「頂部」對齊driver.execute_script("arguments[0].scrollintoview();", element);
driver.execute_script("arguments[0].scrollintoview(true);", element);
# 移動到元素element物件的「底端」與當前視窗的「底部」對齊
driver.execute_script("arguments[0].scrollintoview(false);", element);
# 移動到頁面最底部
driver.execute_script("window.scrollto(0, document.body.scrollheight)");
# 移動到指定的座標(相對當前的座標移動)
driver.execute_script("window.scrollby(0, 700)");
# 結合上面的scrollby語句,相當於移動到700+800=1600畫素位置
driver.execute_script("window.scrollby(0, 800)");
# 移動到視窗絕對位置座標,如下移動到縱座標1600畫素位置
driver.execute_script("window.scrollto(0, 1600)");
# 結合上面的scrollto語句,仍然移動到縱座標1200畫素位置
driver.execute_script("window.scrollto(0, 1200)");
結合seleium滾動到指定元素
Python Selenium環境搭建
安裝python 設定 python 的環境變數 安裝目錄 安裝目錄 scripts 使用 pip安裝 selenium pip install selenium 安裝完python pip工具,在安裝目錄的 scripts 目錄下。在 dos下直接執行 pip install selenium 即...
Python Selenium 學習筆記
1 判斷元素是否存在 try driver.find element.xx a true except a false if a true print 元素存在 elif a false print 元素不存在 2 判斷元素是否顯示 driver.find element by id outputb...
Python Selenium錯誤小結
因為要使用web應用,所以開始用起了,selenium包,安裝倒是挺容易的,但就是出了很多bug。filenotfounderror winerror 2 系統找不到指定的檔案。通過錯誤反饋發現是要把該軟體加到路徑裡面,但是,設定了系統環境變數後發現還是不行,最後,使用了乙個非常原始的方法 brow...