Title

10、Selenium常用操作之下拉滚动条操作

下拉滚动条操作

在自动化测试过程中,我们经常会遇到网页上出现滚动条,那么我们如何实现滚动条的拖动呢?

  • 应用场景:

    • 有时候不拖动滚动条就无法加载到页面上的元素,所以需要操作载滚动条

    • 或者你想要看到页面最下面的内容等等

selenium给我们提供了两种方法

  • 方式一:通过连续的向下的方向键

  • import time
    from selenium import webdriver
    from selenium.webdriver import ActionChains
    from selenium.webdriver.common.keys import Keys
    
    driver = webdriver.Chrome('driver/chromedriver')
    
    driver.get('https://www.baidu.com')
    
    driver.find_element_by_id('kw').send_keys('软件测试')
    
    driver.find_element_by_id('su').submit()
    time.sleep(3)
    
    # 连续键盘下键点击
    ac = ActionChains(driver)
    ac.send_keys(Keys.ARROW_DOWN)
    ac.send_keys(Keys.ARROW_DOWN)
    ac.send_keys(Keys.ARROW_DOWN)
    ac.send_keys(Keys.ARROW_DOWN)
    ac.send_keys(Keys.ARROW_DOWN)
    ac.send_keys(Keys.ARROW_DOWN)
    ac.send_keys(Keys.ARROW_DOWN)
    ac.perform()
    
    time.sleep(20)
    
    driver.close()
  • 方式二:通过js代码操作滚动条
  • import time
    from selenium import webdriver
    from selenium.webdriver import ActionChains
    from selenium.webdriver.common.keys import Keys
    
    driver = webdriver.Chrome('driver/chromedriver')
    
    driver.get('https://www.baidu.com')
    
    driver.find_element_by_id('kw').send_keys('软件测试')
    
    driver.find_element_by_id('su').submit()
    time.sleep(3)
    
    # js语言操作滚动条
    driver.execute_script("window.scrollTo(0,800)")
    
    time.sleep(20)
    driver.close()
posted @ 2023-04-02 20:16  huayaofan  阅读(80)  评论(0)    收藏  举报