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

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

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

相关推荐
kishu_iOS&AI8 小时前
深度学习 —— 损失函数
人工智能·pytorch·python·深度学习·线性回归
好运的阿财8 小时前
OpenClaw工具拆解之canvas+message
人工智能·python·ai编程·openclaw·openclaw工具
wengqidaifeng8 小时前
python启航:1.基础语法知识
开发语言·python
观北海8 小时前
Windows 平台 Python 极简 ORB-SLAM3 Demo,从零实现实时视觉定位
开发语言·python·动态规划
FreakStudio8 小时前
做了个Claude Code CLI 电子宠物:程序员的实体监工代码搭子
python·单片机·嵌入式·面向对象·并行计算·电子diy·电子计算机
柴米油盐那点事儿8 小时前
python+mysql+bootstrap条件搜索分页
python·mysql·flask·bootstrap
AC赳赳老秦9 小时前
OpenClaw二次开发实战:编写专属办公自动化技能,适配个性化需求
linux·javascript·人工智能·python·django·测试用例·openclaw
Ulyanov9 小时前
《PySide6 GUI开发指南:QML核心与实践》 第二篇:QML语法精要——构建声明式UI的基础
java·开发语言·javascript·python·ui·gui·雷达电子对抗系统仿真
刀法如飞10 小时前
一款Python语言Django框架DDD脚手架,助你快速搭建项目
python·ddd·脚手架
刀法如飞10 小时前
一款Python语言Django框架DDD脚手架,适合中大型项目
后端·python·领域驱动设计