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

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

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


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


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)
目录
相关文章
|
2天前
|
数据采集 Web App开发 JavaScript
快速参考:用C# Selenium实现浏览器窗口缩放的步骤
在C#结合Selenium的网络爬虫应用中,掌握浏览器窗口缩放、代理IP、cookie与user-agent设置至关重要。本文详述了如何配置代理(如亿牛云加强版),自定义用户代理,启动ChromeDriver,并访问目标网站如抖音。通过执行JavaScript代码实现页面缩放至75%,并添加cookie增强匿名性。此策略有效规避反爬机制,提升数据抓取的准确度与范围。代码示例展示了整个流程,确保爬虫操作的灵活性与高效性。
|
11天前
|
Web App开发 测试技术 持续交付
Selenium 跨浏览器和跨平台
Selenium 跨浏览器和跨平台
|
11天前
|
Web App开发 XML Java
《手把手教你》系列基础篇(九十六)-java+ selenium自动化测试-框架之设计篇-跨浏览器(详解教程)
【7月更文挑战第14天】这篇教程介绍了如何使用Java和Selenium构建一个支持跨浏览器测试的自动化测试框架。设计的核心是通过读取配置文件来切换不同浏览器执行测试用例。配置文件中定义了浏览器类型(如Firefox、Chrome)和测试服务器的URL。代码包括一个`BrowserEngine`类,它初始化配置数据,根据配置启动指定的浏览器,并提供关闭浏览器的方法。测试脚本`TestLaunchBrowser`使用`BrowserEngine`来启动浏览器并执行测试。整个框架允许在不同浏览器上运行相同的测试,以确保兼容性和一致性。
26 3
|
1月前
python+Pycharm+selenium操作浏览器(Chorme或Edge)
python+Pycharm+selenium操作浏览器(Chorme或Edge)
38 1
|
1月前
|
Web App开发 XML 安全
《手把手教你》系列基础篇(七十三)-java+ selenium自动化测试-框架设计基础-TestNG实现启动不同浏览器(详解教程)
【6月更文挑战第14天】本文介绍了如何使用TestNg进行自动化测试,特别是通过变量参数启动不同浏览器的步骤。
27 5
|
1月前
|
数据采集 Web App开发 前端开发
Selenium:自动化Web浏览器操作的强大工具
**Selenium** 是一款用于自动化Web应用测试和模拟用户行为的工具,支持多种浏览器和编程语言。安装包括安装Selenium库和对应浏览器的WebDriver。基本用法包括导入库、启动浏览器、查找与操作页面元素、等待元素加载及关闭浏览器。在实际项目中,Selenium常用于Web测试、爬虫、自动化表单填写等,优点是跨平台、模拟真实用户行为,但性能较低且依赖浏览器。
54 9
|
25天前
div高度填满浏览器剩余空间(不出现纵向滚动条)
div高度填满浏览器剩余空间(不出现纵向滚动条)
11 0
|
2月前
|
Web App开发 Java 测试技术
《手把手教你》系列技巧篇(二十六)-java+ selenium自动化测试-浏览器操作(详细教程)
【4月更文挑战第18天】本文介绍了Web自动化中的浏览器操作,包括如何打开不同类型的浏览器(如IE、Chrome、Firefox),以及进行页面操作如打开URL、浏览器最大化、刷新、前进和后退。还展示了如何设置浏览器位置和大小,以及获取当前URL和标题。此外,提供了项目实战例子,演示了如何用Selenium实现打开浏览器、设置位置和大小、搜索并执行页面操作的过程。文章最后提到一些其他可用的方法,并鼓励读者继续学习自动化测试相关知识。
101 3
|
2月前
|
JavaScript
vue自定义浏览器滚动条样式
vue自定义浏览器滚动条样式
27 0
|
2月前
|
JavaScript
浏览器插件crx文件--JS混淆与解密
浏览器插件crx文件--JS混淆与解密
81 0

热门文章

最新文章