WebDriver高级应用——操作Web页面的滚动条

目的:

(1)滑动页面的滚动条到页面最下方

(2)滑动页面的滚动条到页面某个元素

(3)滑动页面的滚动条向下移动某个数量的像素

 

测试的网址:

http://www.seleniumhq.org/

 

代码如下:

from selenium import webdriver
import unittest
import traceback    #导入堆栈类
import time

class TestDemo(unittest.TestCase):

    def setUp(self):
        #启动Chrome浏览器
        self.driver = webdriver.Chrome()
        self.driver.implicitly_wait(30)
        
    def test_scroll(self):
        url = "http://www.seleniumhq.com/"
        #访问selenium官网首页
        self.driver.get(url)
        try:
            #使用JavaScript的scrollTo函数和document.body.scrollHeight参数
            #将页面的滚动条滑动到页面的最下方
            self.driver.execute_script("window.scrollTo(100, document.body.scrollHeight);")
            #停顿5秒用于验证滚动条是否滑动到指定位置
            time.sleep(5)

            #使用JavaScript的scrollIntoView函数将被遮挡的元素滚动到可见屏幕上
            #scrollIntoView(true)表示将元素滚动屏幕中间
            #scrollIntoView(false)表示将元素滚动到屏幕底部
            self.driver.execute_script("document.getElementById('choice').scrollIntoView(true);")
            #停顿5秒用于验证滚动条是否滑动到指定位置
            time.sleep(5)

            #使用JavaScript的scrollBy方法,使用0和400横坐标参数
            self.driver.execute_script("window.scrollBy(0,400);")
            #停顿5秒用于验证滚动条是否滑动到指定位置
            time.sleep(3)
        except Exception as e:
            #打印异常堆栈信息
            print(traceback.print_exc())


    def tearDown(self):
        #退出Chrome浏览器
        self.driver.quit()

if __name__ == '__main__':
    unittest.main()

 

posted @ 2018-07-06 18:25  菜鸟可米  阅读(4124)  评论(0编辑  收藏  举报
jQuery火箭图标返回顶部代码