2025年4月9日 星期三 乙巳(蛇)年 正月初十 设为首页 加入收藏
rss
您当前的位置:首页 > 计算机 > 编程开发 > Python

Selenium成长之路-22浏览器滚动条处理

时间:03-20来源:作者:点击数:42

在实际项目中,会经常出现元素不在当前屏幕,需要滑动滚动条,才能显示想要的元素。

这样,如何通过定位滚动条,来定位到想要的元素呢,

webdriver不能直接定位到浏览器滚动条,只能通过execute_script()来执行js脚本,达到滚动条的目的

我们今天运用window.scrollTo()的方法来定位

语法:scrollTo(xpos,ypos)

>>> xpos :横坐标

ypos:纵坐标

直接上代码:

  • # -*- coding: utf-8 -*-
  • """
  • @ auth : carl_DJ
  • @ time : 2020-5-21
  • """
  • from selenium import webdriver
  • from selenium.webdriver.common.by import By
  • import time
  • #启动浏览器
  • #driver = webdriver.Firefox()
  • driver = webdriver.Chrome()
  • url = "http://www.baidu.com"
  • driver.get(url)
  • #搜索selenium
  • driver.find_element(By.ID,"kw").send_keys("selenium")
  • driver.find_element(By.ID,"su").click()
  • time.sleep(3)
  • #调用js代码拖动滚动条
  • driver.execute_script("window.scrollTo(0,1680)")
  • #直接拖动到最底部
  • driver.execute_script("window.scrollTo(0,document.body.scrollHeight)")
  • #直接拖到顶部
  • driver.execute_script("window.scrollTo(0,0)")
  • time.sleep(3)
  • #退出浏览器
  • driver.quit()

>>>还有一种写法:

针对 Chrome浏览器

  • #针对Chrome浏览器
  • js = "var q=document.body.scrollTop=10000"
  • driver.execute_script(js)

针对Firefox浏览器

  • #针对Firefox浏览器
  • js = "var q=document.documentElement.scrollTop=10000"
  • driver.execute_script(js)
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门