selenium自动化测试之浏览器滚动条和DIV内嵌滚动条

597 篇文章 17 订阅
51 篇文章 5 订阅

1.浏览器滚动条

需要借助js

方法1:

execute_script("window.scrollBy(x,y)") # 必要参数x,y,x指横向移动的像素,y指竖向

方法2:

driver.execute_script("document.documentElement.scrollTop=10000")  # scrollTop=0指的是滑动到顶部,10000指滑动到底部

代码实现

打开微云首页,点击[微云服务协议],分别向下滑动一点和滑动到底。注意打开协议后,需要匹配到新的window_handle才能操作滑动,不然是会无法滑动这一页的。

from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
import time
import os


if __name__ == "__main__":
    firefox_driver = webdriver.Firefox()
    firefox_driver.get("https://www.weiyun.com/")
    first_window = firefox_driver.current_window_handle
    print(firefox_driver)
    firefox_driver.find_element_by_link_text("微云服务协议").click()
    time.sleep(1)
    window_handles = firefox_driver.window_handles
    for current_window in window_handles:
        if current_window != first_window:
            firefox_driver.switch_to.window(current_window)
            print(current_window)
        else:
            pass
    firefox_driver.execute_script("window.scrollBy(0,100)")
    time.sleep(2)
    firefox_driver.execute_script("document.documentElement.scrollTop=10000")
    time.sleep(2)
    firefox_driver.execute_script("window.scrollBy(0,100)")
    time.sleep(1)
    firefox_driver.quit()

2.DIV内嵌滚动条

以百度云盘为例
在这里插入图片描述

js = 'document.getElementsByClassName("NHcGw")[0].scrollTop=10000'
    firefox_driver.execute_script(js)

el.scrollLeft也可以设置横向滑动

看完点赞 ~养成好习惯,以上内容希望对你有帮助,如果对软件测试、接口测试、自动化测试、面试经验交流感兴趣可以加入我们。642830685,免费领取最新软件测试大厂面试资料和Python自动化、接口、框架搭建学习资料!技术大牛解惑答疑,同行一起交流。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值