Selenium select-下拉列表处理

针对 select 标签的下拉列表,Selenium 提供了 Select 类进行操作:

from selenium.webdriver.support.ui import Select

Select 类常用方法:

序号方法/属性描述
1select_by_value()根据值选择
2select_by_index()根据索引选择(从1开始)
3select_by_visible_text()根据文本选择
4deselect_by_value()根据值反选
5deselect_by_index()根据索引反选
6deselect_by_visible_text()根据文本反选
7deselect_all()反选所有
8options获取所有选项
9all_selected_options获取所有选中的选项
10first_selected_option获取第一个选中的选项

select 单选框

对于 select 单选框,操作比较简单,创建 Select 对象后,直接使用 Select 类中的方法选择即可。

实例应用

from selenium import webdriver
from time import sleep
from selenium.webdriver.support.ui import Select

driver = webdriver.Chrome()  # 打开浏览器
driver.get("http://sahitest.com/demo/selectTest.htm")  # 跳转至测试页面
sleep(1)

select_element = Select(driver.find_element_by_id("s1"))  # 创建Select对象
select_element.select_by_value("46")  # 根据值选择
sleep(1)
select_element.select_by_index(4)  # 根据索引选择(从1开始)
sleep(1)
select_element.select_by_visible_text("Home Phone")  # 根据文本选择
sleep(1)

driver.quit()

select 多选框

对于 select 多选框,如果需要选中某几个选项,那么,要注意清除原来已经选中的选项

实例应用

from selenium import webdriver
from time import sleep
from selenium.webdriver.support.ui import Select

driver = webdriver.Chrome()  # 打开浏览器
driver.get("http://sahitest.com/demo/selectTest.htm")  # 跳转至测试页面
sleep(1)

select_element = Select(driver.find_element_by_id("s4Id"))  # 创建Select对象
select_element.deselect_all()
select_element.select_by_value("o1val")  # 根据值选择
sleep(1)
select_element.select_by_index(4)  # 根据索引选择(从1开始)
sleep(1)
select_element.select_by_visible_text("o2")  # 根据文本选择
sleep(1)
# 打印所有选项的文本
for option in select_element.options:
    print(option.text)
sleep(2)

driver.quit()

总结

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

肖遥Janic

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值