UI自动化测试-32--WebDriver--高级应用-JavaScript的应用操作滑动条
from selenium import webdriver
from time import sleep
'''
操作滚动条:
1、滑动到最下方:window.scrollTo(0,document.body.scrollHeight)
2、滑动到最上方:window.scrollTo(0,0)
获取当前窗口的宽:document.body.scrollWidth
获取当前窗口的高:document.body.scrollHeight
'''
driver = webdriver.Chrome()
driver.get("http://www.baidu.com")
driver.find_element_by_id('kw').send_keys("storm")
driver.find_element_by_id('su').click()
sleep(2)
js1 = "window.scrollTo(0,document.body.scrollHeight)"
js2 = "window.scrollTo(0,0)"
driver.execute_script(js1)
sleep(3)
driver.execute_script(js2)
sleep(2)
driver.quit()
from selenium import webdriver
from time import sleep
'''
操作滚动条:
1、通过js脚本将纵向滚动条向下移动指定的像素
window.scrollTo(0,300)
'''
driver = webdriver.Chrome()
driver.maximize_window()
driver.implicitly_wait(20)
driver.get("http://www.baidu.com")
driver.find_element_by_id('kw').send_keys("storm")
driver.find_element_by_id('su').click()
sleep(5)
#向下移动300像素
js = "window.scrollTo(0,300)"
driver.execute_script(js)
sleep(5)
driver.quit()
from selenium import webdriver
from time import sleep
'''
操作滚动条:
1、将滚动条滑动到指定元素上:"arguments[0].scrollIntoView();"
'''
driver = webdriver.Chrome()
driver.maximize_window()
driver.get("http://www.baidu.com")
driver.find_element_by_id('kw').send_keys("storm")
driver.find_element_by_id('su').click()
sleep(5)
js = "arguments[0].scrollIntoView()"
ele = driver.find_element_by_xpath('//*[@id="3"]/h3/a')
driver.execute_script(js, ele)
sleep(5)
# driver.quit()
from selenium import webdriver
from time import sleep
'''
操作横向滚动条
"window.scrollTo(document.body.scrollWidth,0)"
'''
driver = webdriver.Chrome()
# driver = webdriver.Firefox()
driver.get("http://www.baidu.com")
driver.find_element_by_id('kw').send_keys("storm")
driver.find_element_by_id('su').click()
driver.set_window_size(500,500) #设定指定大小的窗口,使其出现横向滚动条
js1 = "window.scrollTo(document.body.scrollWidth,0)"
js2 = "window.scrollTo(0,0)"
js3 = "window.scrollTo(200,0)"
driver.execute_script(js1)
sleep(5)
driver.execute_script(js2)
sleep(5)
driver.execute_script(js3)
sleep(5)
driver.quit()
from selenium import webdriver
from time import sleep
'''
操作内嵌滚动条
先切到iframe中,然后滚动即可:"window.scrollTo(0,200)"
'''
driver = webdriver.Chrome()
# driver = webdriver.Firefox()
driver.get("http://sahitest.com/demo/iframesTest.htm")
sleep(2)
driver.switch_to.frame(1)
js = "window.scrollTo(0,200)"
driver.execute_script(js)
sleep(5)
driver.quit()
注释:
'''
1、实现滑动滚动条到指定像素位置的方法。其中x为横坐标,y为纵坐标
window.scrollTo(x,y)
2、获取当前窗口的高度和宽度
document.body.scrollWidth
document.body.scrollHeight
3、滑动到指定元素位置
arguments[0].scrollIntoView() ,arguments[0] 是指第一个传参
'''
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
2017-02-21 Monkey实例测试
2017-02-21 转载 JDK + Android-SDK + Python + MonkeyRunner 的安装