webdriver高级应用-js操作滚动条
1.滑动页面的滚动条到页面最下面
2.滑动页面的滚动条到页面的某个元素
3.滑动页面的滚动条向下移动某个数量的像素

#encoding=utf-8
from selenium import webdriver
import unittest
import traceback
import time class TestDemo(unittest.TestCase): def setUp(self):
# 启动IE浏览器
self.driver = webdriver.Ie(executable_path = "e:\\IEDriverServer") def test_scroll(self):
url = "http://www.sohu.com/"
# 访问selenium官网首页
try:
self.driver.get(url)
# 使用JavaScript的scrollTo函数和document.body.scrollHeight参数
# 将页面的滚动条滑动到页面的最下方
self.driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
# 停顿3秒,用于人工验证滚动条是否滑动到指定的位置。
# 根据测试需要,可注释下面的停顿代码
time.sleep(3) # 使用JavaScript的scrollIntoView函数将被遮挡的元素滚动到可见屏幕上
# scrollIntoView(true)表示将元素滚到屏幕中间
# scrollIntoView(false)表示将元素滚动屏幕底部
self.driver.execute_script("document.getElementsByTagName('a')[500].scrollIntoView(true);")
#for i in range(10,900):
#driver.execute_script("document.getElementsByTagName('a')[%s].scrollIntoView(true);" %i) #("document.getElementById('choice').scrollIntoView(true);")
# 停顿3秒,用于人工验证滚动条是否滑动到指定的位置。
# 根据测试需要,可注释下面的停顿代码
time.sleep(3) # 使用JavaScript的scrollTo方法,使用0和400横纵坐标参数,
# 将页面纵向向下滚动400像素
self.driver.execute_script("window.scrollBy (0,400);")
# 停顿3秒,用于人工验证滚动条是否滑动到指定的位置。
# 根据测试需要,可注释下面的停顿代码
time.sleep(3)
except Exception, e:
# 打印异常堆栈信息
print traceback.print_exc() def tearDown(self):
# 退出IE浏览器
self.driver.quit() if __name__ == '__main__':
unittest.main()
webdriver高级应用-js操作滚动条的更多相关文章
- selenium 调用JS操作滚动条(java)来解决element not clickable的问题
今天在运行自动化用例的时候,发现总是某个元素提示not clickable.分析原因有可能是页面右下角那个大大的top图标,刚好挡住了我要点击的元素.要解决就得拉动页面,就需要操作页面上的滚动条. ...
- webdriver-js操作滚动条
webdriver-js操作滚动条 1. webdriver高级应用-js操作滚动条 1.滑动页面的滚动条到页面最下面 2.滑动页面的滚动条到页面的某个元素 3.滑动页面的滚动条向下移动某个 ...
- Python selenium webdriver设置js操作页面滚动条
js2 = "window.scrollTo(0,0);" #括号中为坐标 当不知道需要的滚动的坐标大小时: weizhi2 = driver.find_element_by_id ...
- java selenium webdriver处理JS操作窗口滚动条
未经作者允许,禁止转载!!! java selenium webdriver处理JS操作窗口滚动条 java selenium webdriver处理JS操作窗口滚动条 import org.open ...
- Python3+Selenium3+webdriver学习笔记12(js操作应用:滚动条 日历 内嵌div)
#!/usr/bin/env python# -*- coding:utf-8 -*-'''Selenium3+webdriver学习笔记12(js操作应用:滚动条 日历 内嵌div)'''from ...
- webdriver高级应用(2) - 滚动条操作
webdriver高级应用(2) - 滚动条操作 #-*- coding:utf-8 -*- from selenium import webdriver import unittest import ...
- python3 + selenium 使用 JS操作页面滚动条
js2 = "window.scrollTo(0,0);" #括号中为坐标 当不知道需要的滚动的坐标大小时: weizhi2 = driver.find_element_by_id ...
- js处理滚动条操作
在做UI自动化项目的时候,我们不免会遇到一些页面的内容比较多,导致会有滚动条,但是我们又主要操作当前页面看不到的元素,这怎么办呢? 在我们实际操作过程中,我们肯定是直接滑动鼠标操作就可以完成,但是在做 ...
- webdriver与JS操作浏览器元素
1.JQuery的选择器实例 语法 描述 $(this) 当前 HTML 元素 $("p") 所有 <p> 元素 $("p.intro") 所有 c ...
随机推荐
- CSS3学习-用CSS制作立体导航栏
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- (四)我的JavaScript系列:原型链
夜深风竹敲秋韵,万叶千声皆是恨. 原型链对于JavaScript来说是个很核心的概念.JavaScript不是基于类模板的面向对象语言:反而,它的面向对象机制是基于原型的.我们不可能说某个对象属于什么 ...
- SharePoint 2013 安装配置(3-2)
第三部分SQL Server后端配置篇幅较长,上一篇介绍SQL Server 前提条件及安装(3-1),这篇分享SQL Server功能安装配置,请参考以下步骤. 10.在“安装角色”屏幕上,选择“S ...
- 火狐浏览器不支持location.reload()(以改变页面大小时重新刷新页面为例)
背景:当页面大小改变时需要重新刷新页面,以适应相应的尺寸 解决方法: var url = window.location.href; var parm = parseInt(Math.random() ...
- mysql-新增、更新、删除语句
1.插入数据: INSERT INTO t_book VALUES(NULL,'我爱我家',20,'张三',1); INSERT INTO t_book(id,bookName,price,autho ...
- rhythmbox插件开发笔记3:安装 makefile && schema && po
本篇主要讲通过makefile方式来安装rhythmbox插件的相关知识. makefile 如果makefile是什么,请自行谷歌 参考了pandasunny同学的rhythmbox-baidu-m ...
- HDU 5094 Maze (状压)
加一个维度,钥匙的状态,状压一下.n很小,钥匙也只有10个,bfs就好了. 忘了数组初始化.以后坚决不犯这种低级错误. #include<cstdio> #include<queue ...
- python基础一 day15 面试题
# def demo():# for i in range(4):# yield i## g=demo()## g1=(i for i in g)# g2=(i for i in g1)## prin ...
- python基础一 day15 作业
3.处理文件,用户指定要查找的文件和内容,将文件中包含要查找内容的每一行都输出到屏幕def check_file(filename,aim): with open(filename,encoding= ...
- 安全错误使用CORS在IE10与Node和Express及XMLHttpRequest: 网络错误 0x4c7, 操作已被用户取消
在IE下:VUE项目,后台替换为https请求之后,vue热更新请求挂起,控制台报错:XMLHttpRequest: 网络错误 0x4c7, 操作已被用户取消.但是chrome与Firefox正常 当 ...