python实现selenium的所有方法

在写自动化测试脚本时,总会忘记某些方法的名称。所以将所有的方法做一个归纳。

下面是方法中要导入的一些模块

python 复制代码
#通过from ~ import语句导入Selenium WebDriver模块
from selenium import webdriver
#导入common包中的by模块,用来写获取元素的方法
from selenium.webdriver.common.by import By
#下拉框元素的选择操作,下拉框要使用Select对象的函数
from selenium.webdriver.support.select import Select
#创建了浏览器对象,打开谷歌浏览器。当然点后面也可以写Firefox,Edge,
driver = webdriver.Chrome()

该记录的方法是基于python3.12.1, selenium 4.16.0。

|-----------------------------|----------------------|
| 方法名 | 描述 |
| .maximize_window() | 将浏览器的窗口最大化 |
| .minimize_window() | 最小化窗口 |
| .close() | 关闭窗口 |
| .set_window_position(x,y) | 将浏览器移动到指定位置 |
| .set_window_size(w px,h px) | 将浏览器窗口设置为指定大小 |
| .set_window_rect(x,y,w,h) | 将浏览器窗口移动到指定位置并设置窗口大小 |
| 以上三个方法前面加上get_就能获取对应的信息,当然括号后面就不能写参数 ||
| .title | 获取浏览器窗口当前的标题 |
| .current_url | 获取浏览器窗口当前的网址 |
| .back() | 后退 |
| .forward() | 前进 |
| .refresh() | 刷新 |
| .get("网址") | 使用get方式访问指定的网址 |
[面对浏览器的方法和属性]

|----------------------------------------------|-----------------------------------------------|
| .find_element(By.ID, "id属性值") | 按照HTML元素的id属性查找元素 |
| .find_element(By.NAME, "name属性值") | 按name属性查找 |
| .find_element(By.CLASS_NAME,"class名") | 按class属性查找 |
| .find_element(By.LINK_TEXT,"链接的文本") | 按链接文本查找 |
| .find_element(By.PARTAL_LINK_TEXT,"链接的部分文本") | 按链接文本进行模糊查找 |
| .find_element(By.TAG_NAME,"HTML标签名") | 按标签类型查找 |
| .find_element(By.XPATH,"Xpath表达式") | 按XPath查找 |
| .find_element(By.XPATH,"/html/body/div") | 基于绝对路径或相对路径定位 |
| .find_element(By.XPATH,"//span/input1") | 基于索引或属性定位 |
| 在XPath中可以:基于函数或表达式定, 位基于轴定位 ||
| .find_element(By.CSS_SELECTOR,"CSS选择器") | 按CSS选择器查找,该方法也可以实现层级关系定位,关键属性定位,属性模糊定位,组合式查询。 |
| .find_element(By., "").find_element(By., "") | 嵌套查询 |
[查找元素的方法]

|-----------------------------------|----------------------------|
| .click() | 单击 |
| .send_keys("值") | 向元素输入内容 |
| .clear() | 清空元素的内容 |
| .submit() | 提交表单元素 |
| .text | 获取元素的文本值 |
| .tag_name | 获取元素的标签类型 |
| .is_selected() | 获取元素的选中状态(返回布尔类型True代表选中) |
| .is_enabled() | 获取元素的可编辑状态(如果可以编辑,则返回True) |
| .is_displayed() | 判断元素是否已显示(如果显示,则返回True) |
| .get_attribute("属性名称") | 获取元素的HTML属性 |
| .get_property("属性名称") | 获取元素的DOM属性 |
| .value_of_css_property("CSS属性名称") | 获取元素的CSS属性 |
| .location | 获取元素的位置与大小 |
| .size | 获取大小对象 |
| .rect | 获取位置及大小对象 |
| | 获取下拉框元素的选项 |
[面对元素的方法和属性]

相关推荐
荣码8 小时前
GraphRAG:普通RAG只能回答"点"的问题,我踩了4个坑才搞懂
java·python
金銀銅鐵19 小时前
[Python] 基于欧几里得算法,实现分数约分计算器
python·数学
Lyn_Li21 小时前
Kaggle Top 5 | 198只股票、200条数据的金融预测——BattleFin高分方案从零复现
python·kaggle·比赛复盘·金融预测
小九九的爸爸1 天前
前端想要入门Agent开发,要具备哪些Python基础?
python·agent·ai编程
阿耶同学1 天前
手把手教你用 LangGraph 搭建三层嵌套 Agent 架构
python·程序员
花酒锄作田2 天前
Pydantic校验配置文件
python
hboot2 天前
AI工程师第四课 - 深度学习入门
pytorch·python·神经网络
ZhengEnCi2 天前
P2M-Matplotlib折线图完全指南-从数据可视化到趋势分析的Python绘图利器
python·matlab·数据可视化
ZhengEnCi2 天前
P2L-Matplotlib饼图完全指南-从数据可视化到图表定制的Python绘图利器
python·matlab
曲幽2 天前
你的REST接口还在“过度投喂”数据吗?——FastAPI + GraphQL实战避坑指南
python·fastapi·web·graphql·route·cors·rest·strawberry