Python selenium 網頁滾動條操作詳解

2022-09-21 22:21:17 字數 1700 閱讀 7204

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...