selenium之 如何控制網頁內嵌div中滾動條的滾動
阿新 • • 發佈:2019-01-23
很多人疑惑怎麼用selenium控制網頁div中滾動條的滾動,其實這個問題很簡單,用JS很簡單就可以實現。
示例HTML程式碼如下:
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
div.scroll
{
background-color:#00FFFF;
width:100px;
height:100px;
overflow:auto;
}
</style>
</head>
<body>
<p>overflow:scroll</p>
<div class="scroll">You can use the overflow property when you want to have better control of the layout. The default value is visible.aaaaaaaaaaaaaaaaaaaaaaaaaaaa</div>
</body>
</html>
接下來我們用JS來控制裡面的滾動條滾動:
from selenium import webdriver
dr=webdriver.Firefox()
dr.get('file:///D:/1.html' )
js='document.getElementsByClassName("scroll")[0].scrollTop=10000'
# 就是這麼簡單,修改這個元素的scrollTop就可以
dr.execute_script(js)
當然,我們能做更多:
document.getElementsByClassName("scroll")[0].scrollHeight # 獲取滾動條高度
document.getElementsByClassName("scroll")[0].scrollWidth # 獲取橫向滾動條寬度
document.getElementsByClassName("scroll" )[0].scrollLeft=xxx # 控制橫向滾動條位置