python-web自动化-滚动条操作

Posted 赵小丫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python-web自动化-滚动条操作相关的知识,希望对你有一定的参考价值。

滚动条操作:当待操作的元素在页面可是区域外时,要将待操作的元素滚动到可视区域当中


步骤:
1.先找要将要操作的元素
element = driver.find_element_by_xxxx("XXXX")


2.再将元素滑动到可视区域;通过执行javaScript语句实现
driver.execute_script("arguments[0].scrollIntoView();",element)
#另外一种方式,scrollIntoViewIfneeded


3.再操作元素
element.XXX()

 

以下是移动的四种方式

1.移动到元素element对象的“底端”与当前窗口的“底部”对齐

driver.execute_script("arguments[0].scrollIntoView(false);",element)

2.移动到元素element对象的“顶端”与当前窗口的“顶部”对齐

driver.execute_script("arguments[0].scrollIntoView();",element)

3.移动到页面底部

driver.execute_script("window.scrollTo(0,document.body.scrollHeight)")

4.移动到页面顶部

driver.execute_script("window.scrollTo(0,document.body.scrollHeight,0)")

 

 

 

 

 

 

 




 

 

 

代码:百度首页输入内容,跳转页面;滑动到该页面底部,点击【下一页】

from selenium.webdriver.common.keys import Keys
from selenium import webdriver
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
import time
# 百度首页输入内容检索,跳转检索后页面,划动到该页面最下面的‘下一页’
driver = webdriver.Chrome()
driver.get(https://www.baidu.com/)
WebDriverWait(driver,10).until(EC.visibility_of_element_located((By.XPATH,//input[@id="kw"])))
driver.find_element_by_xpath(//input[@id="kw"]).send_keys(许嵩,Keys.ENTER) #输入文本并回车操作
time.sleep(2)
# 定位元素‘下一页’
ele = driver.find_element_by_xpath(//a[@class="n"])
#根据‘下一页元素’,划动到页面最下面
driver.execute_script("arguments[0].scrollIntoView();",ele)
time.sleep(2)
# 点击【下一页】
ele.click()

 

以上是关于python-web自动化-滚动条操作的主要内容,如果未能解决你的问题,请参考以下文章

如何在 MS Word 文档中显示代码片段,因为它在 *** 中显示(滚动条和灰色背景)

音频处理Melodyne 网络缩放功能 ( 音符分离线 | 片段分离线 | 窗口滚动条 | 网格缩放 | 修改图像显示位置 | 显示五线谱 )

selenium+python 自动化中界面滚动条操作方法

python-web自动化-三种等待方式(元素定位不到一)

js scrollTop, 滚动条操作

web自动化中页面多个滚动条时的拖动操作?