selenium 如何滚动页面使元素不被遮挡
方法一: 使某个元素与页面顶部或者底部对齐(适用于滚动弹层)
songs= driver.find_elements(By.XPATH,"//div[@class='tt']/span") js= 'arguments[0].scrollIntoView(true);' # true顶部,false 底部 driver.execute_script(js,songs[70]) # 将元素与页面顶部对齐
方法二:
jsdown= 'window.scrollTo(0,document.body.scrollHeight)' # 页面滚动到最底部 driver.execute_script(jsdown) jstop = 'window.scrollTo(document.body.scrollHeight,0)' # 页面滚动到最顶部 driver.execute_script(jstop)
方法三:
action = ActionChains(driver);# 创建鼠标对象: action.drag_and_drop_by_offset(x,y,element) #x、y表示元素拖动时横向和纵向移动的距离,单位为像素。element表示的是元素对象; action.perform() #调用鼠标执行事件:
方法四 (适用 滚动条内嵌在div内):
js="document.getElementById('agreementMain').scrollTop=12000" #获取内嵌div的位置 并设置滚动条移动的值 driver.execute_script(js) # 调用js方法
js="var q=document.getElementByClassName('dataTables_scrollBody').scrollTop=100000"
driver.execute_script(js)
关于鼠标的各种操作:
Selenium中元素、浏览器、鼠标、键盘操作及获取元素方法介绍;_石头缝里的小松鼠的博客-CSDN博客_selenium 获取按钮

浙公网安备 33010602011771号