当前位置: 首页 > news >正文

学习Python中Selenium模块的基本用法(4:WebDriver常用属性及函数)

  Selenium模块通过WebDriver支持Chrome、Edge、Firefox、IE、Safar等主流浏览器的自动化操作,WebDriver 用于控制 web 浏览器的行为,每个浏览器都有一个特定的 WebDriver 实现(如geckodriver之于Firefox,chromedriver之于chrome),用于处理 Selenium 和浏览器之间的通信。
  WebDriver常用属性及函数如下表所示,后续文章中结合Selenium文档再详细说明及验证对应属性或函数的用法:

序号名称说明分类
1get(url)函数,打开指定 URL浏览器操作
2close函数,关闭当前窗口浏览器操作
3quit函数,关闭所有窗口并退出浏览器浏览器操作
4back函数,后退到上一个页面浏览器操作
5forward函数,前进到下一个页面浏览器操作
6refresh函数,刷新当前页面浏览器操作
7title属性,获取当前页面标题浏览器操作
8current_url属性, 获取当前页面 URL浏览器操作
9page_source属性, 获取当前页面源码浏览器操作
10switch_to.window(window_name)函数,切换到指定窗口窗口和框架操作
11switch_to.frame(frame_reference)函数,切换到指定框架(frame)窗口和框架操作
12switch_to.default_content函数,返回默认内容窗口和框架操作
13window_handles属性,获取所有窗口句柄窗口和框架操作
14current_window_handle属性, 获取当前窗口句柄窗口和框架操作
15find_element_by_id函数,通过 ID 查找元素元素查找方法
16find_element_by_name函数, 通过 name 属性查找元素元素查找方法
17find_element_by_xpath函数,通过 XPath 查找元素元素查找方法
18find_element_by_link_text函数,通过链接文本查找元素元素查找方法
19find_element_by_partial_link_text函数, 通过部分链接文本查找元素元素查找方法
20find_element_by_tag_name函数,通过标签名查找元素元素查找方法
21find_element_by_class_name函数,通过 class 名查找元素元素查找方法
22find_element_by_css_selector函数,通过 CSS 选择器查找元素元素查找方法
23find_elements_by_*函数,将上述15~22的函数中的element换为elements,返回所有匹配元素列表元素查找方法
24find_element函数,上述元素查找函数的内部实现,本函数接受两个参数:定位方式(By)和定位表达式,不同定位方式即对应上述查找函数名称后半部分的by方式,本函数还有对应的集合版本find_elements,用于返回所有匹配元素的列表,而不是第一个匹配元素元素查找方法
25click函数,点击元素元素操作
26send_keys函数,向元素发送按键元素操作
27clear函数,清除元素内容元素操作
28submit函数,提交表单元素操作
29text属性, 获取元素文本元素操作
30get_attribute函数, 获取元素属性值元素操作
31is_displayed函数,检查元素是否可见元素操作
32is_enabled函数,检查元素是否可用元素操作
33is_selected函数,检查元素是否被选中元素操作

参考文献:
[1]https://www.selenium.dev/zh-cn/
[2]https://www.selenium.dev/zh-cn/documentation/webdriver/getting_started/
[3]https://blog.csdn.net/kk_lzvvkpj/article/details/148610502
[4]https://registry.npmmirror.com/binary.html?path=chromedriver/
[5]https://chromedriver.chromium.org/

http://www.dtcms.com/a/307396.html

相关文章:

  • RabbitMQ的特点和消息可靠性保障
  • RabbitMQ 队列配置设置 RabbitMQ 消息监听器的并发消费者数量java
  • [Linux入门] Linux防火墙技术入门
  • rabbitmq的安装和使用-windows版本
  • 远程仓库地址发生变化
  • RabbitMQ安装与介绍
  • 推客小程序商业模型设计:合规分佣体系×盈利模式×LTV提升策略
  • Cesium 快速入门(七)材质详解
  • 一键打包所有docker镜像的脚本
  • 暑期算法训练.11
  • 【09】大恒相机SDK C#开发 ——库函数 IntPtr ConvertToRGB24详细解释 及 示例
  • 【Linux系统】库的制作与原理
  • 007TG洞察:波场TRON上市观察,Web3流量工具的技术解析与应用
  • 【Linux系列】SSD 与 HDD
  • 学习日志23 python
  • 深度理解 linux 系统内存分配
  • 用 AI 解析采购订单,从上传到自动生成 Draft 订单全流程实战
  • 多种录音笔录音芯片方案推荐
  • 《Java 程序设计》第 17 章 - 并发编程基础
  • MBR与GPT分区表深度解析:硬盘分区该怎么选?
  • CPP学习之继承
  • 《Java 程序设计》第 18 章 - Java 网络编程
  • 常见的中间件漏洞
  • AI IDE+AI 辅助编程-生成的大纲-一般般
  • 设计模式:责任链模式 Chain of Responsibility
  • 排序的演进:从机械齿轮到领域专用芯片加速器的全面综述
  • Centos 7部署.NET 8网站项目
  • 如何在 macOS 上使用 dnsmasq 搭建本地 DNS 缓存/转发
  • 微服务 02
  • 05百融云策略引擎项目交付-laravel实战完整交付定义常量分文件配置-独立建立lib类处理-成功导出pdf-优雅草卓伊凡