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/input[1]") | 基于索引或属性定位 |
| 在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 | 获取位置及大小对象 |
| | 获取下拉框元素的选项 |
[面对元素的方法和属性]

相关推荐
子午41 分钟前
【蘑菇识别系统】Python+TensorFlow+Vue3+Django+人工智能+深度学习+卷积网络+resnet50算法
人工智能·python·深度学习
Mr_Xuhhh1 小时前
pytest -- 指定⽤例执⾏顺序
开发语言·python·pytest
tokepson1 小时前
关于python更换永久镜像源
python·技术·记录
F_D_Z1 小时前
【解决办法】网络训练报错AttributeError: module ‘jax.core‘ has no attribute ‘Shape‘.
开发语言·python·jax
前端伪大叔1 小时前
第29篇:99% 的量化新手死在挂单上:Freqtrade 隐藏技能揭秘
后端·python·github
韩曙亮2 小时前
【人工智能】AI 人工智能 技术 学习路径分析 ① ( Python语言 -> 微积分 / 概率论 / 线性代数 -> 机器学习 )
人工智能·python·学习·数学·机器学习·ai·微积分
喵叔哟2 小时前
6.配置管理详解
后端·python·flask
曾经的三心草3 小时前
基于正倒排索引的Java文档搜索引擎3-实现Index类-实现搜索模块-实现DocSearcher类
java·python·搜索引擎
MOMO陌染3 小时前
Python 饼图入门:3 行代码展示数据占比
后端·python
vvoennvv4 小时前
【Python TensorFlow】 TCN-GRU时间序列卷积门控循环神经网络时序预测算法(附代码)
python·rnn·神经网络·机器学习·gru·tensorflow·tcn