selenium:Select类操作复选框和下拉框(7)

复选框/下拉框操作的Select类

主要使用selinium中的类Select来模拟选择网页上的下拉框或者复选框中的内容,使用前先导入

from selenium.webdriver.support.ui import Select

主要方法如下:

|--------------------------|-----------------|
| 函数 | 功能 |
| select_by_value | 根据复选框/下拉框的值选择 |
| select_by_index | 根据复选框/下拉框的索引选择 |
| select_by_visible_text | 根据复选框/下拉框文本描述选择 |
| deselect_by_value | 根据复选框/下拉框的值反选 |
| deselect_by_index | 根据复选框/下拉框的索引反选 |
| deselect_by_visible_text | 根据复选框/下拉框文本描述反选 |
| deselect_all | 反选所有值 |
| options | 返回所有选项 |
| all_selected_options | 返回所有选中的选项 |
| first_selected_option | 第一个选择的选项 |

我们自定义一个html文件,放一个多选框和下拉框方便测试

复制代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form action="/submit-path">
<label for="fruits">Choose your favorite fruit:</label>
<select id="fruits" name="fruits" multiple>
<option value="apple">Apple</option>
<option value="orange">Orange</option>
<option value="banana">Banana</option>
<option value="grape">Grape</option>
</select>
</form>
<form action="/submit-path">
<label for="animals">Choose your favorite animal:</label>
<select id="animals" name="animals">
<option value="dog">Dog</option>
<option value="cat">Cat</option>
<option value="tiger">Tiger</option>
</select>
</form>
<input type="submit" value="提交" id="su" class="btn self-btn bg s_btn">
</body>
</html>

打开这个html页面如下:一个多选框和一个下拉框

示例:打开html文件,选择多选框内容和下拉框内容。

打开网页,并初始化Select类:

复制代码
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import Select
driver = webdriver.Safari()
# 打开一个网页
driver.get("file:///Users/abc/Desktop/myhtml.html")
driver.maximize_window()
sleep(2)

#初始化Select类,传入水果多选框对应的元素位置
select_content1 = Select(driver.find_element(By.ID,'fruits'))

#初始化Select类,传入动物下拉框对应的元素位置
select_content2 = Select(driver.find_element(By.ID,'animals'))

使用select_by_value函数选择水果多选框第1个和第2个内容

复制代码
select_content1.select_by_value('apple')
select_content1.select_by_value('orange')

使用deselect_all函数去掉水果多选框的所有的选择

复制代码
select_content1.deselect_all()

使用select_by_index函数选择动物下拉框的第3个内容

复制代码
select_content2.select_by_index(2)

执行结果如视频所示:

多选框

共勉: 东汉·班固《汉书·枚乘传》:"泰山之管穿石,单极之绠断干。水非石之钻,索非木之锯,渐靡使之然也。"

-----指水滴不断地滴,可以滴穿石头;

-----比喻坚持不懈,集细微的力量也能成就难能的功劳。

----感谢读者的阅读和学习,谢谢大家。

相关推荐
金銀銅鐵11 分钟前
[Python] 借助 Turtle 来展示汉诺塔
python·数学
暴躁的小鸟11 分钟前
附近口碑好的斜视配镜训练的眼视光中心
人工智能·python·深度学习
Data_Journal17 分钟前
如何使用 Java 和 Jsoup 解析 HTML
大数据·开发语言·数据库·python·scrapy
如何原谅奋力过但无声42 分钟前
现代化Python工具:uv、Ruff、Pyright、Rich(只讲重点版)
vscode·python·uv
Logintern0943 分钟前
DeepAgents 主-子 Agent 的底层实现逻辑完全基于 LangGraph 的图机制
python
BerrySen1781 小时前
一个 JDBC 参数引发的架构演进:Apache SeaTunnel 如何解决数据同步中的“定时 Flush”难题
运维·自动化·zabbix
码云骑士2 小时前
97-Milvus从零到生产-Standalone-vs-Cluster-索引选择-分片监控扩容
python·milvus
accept 99%2 小时前
python版提取 PDF 的常用第三方库与工具
开发语言·python·pdf
小猴子爱上树2 小时前
跨境图片翻译工具,批量处理商品图视频字幕
python·音视频
用户298698530142 小时前
HTML 转 Word 指南:新手入门教程
人工智能·后端·python