1. 程式人生 > >selenium之 如何控制網頁內嵌div中滾動條的滾動

selenium之 如何控制網頁內嵌div中滾動條的滾動

很多人疑惑怎麼用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 # 控制橫向滾動條位置