select选中的值_selenium下拉框处理(select)

前言 

 web自动化中,常见的场景还有一个下拉框的选择,哪么在selenium中如何做下拉框的操作呢?

select

select在HTML中表示元素名,可创建单选或多选菜单。

HTML中select长什么样子:

select在HTML中元素名,下面有选择操作,选择内容在select中包含

<html>

<body>

<form>
<center>
<select name="anjing">
<option value="boke">请关注安静博客option>
<option value="study">今天学习了吗?option>
<option value="daily">今天看安静博客了吗?option>
<option value="like">点赞了吗?option>
<option value="attention">关注了吗?option>
center>
select>
form>

body>
html>

select操作方法

selenium中想要操作下拉框需要导入新的模块 from selenium.webdriver.support.select import Select

Select有以下操作方法:

方法说明
select_by_index()通过索引定位
select_by_value() 通过value值定位
select_by_visible_text()通过文本值定位
deselect_all()取消所有选项
deselect_by_index() 取消对应index选项
deselect_by_value()  取消对应value选项
deselect_by_visible_text() 取消对应文本选项
first_selected_option() 返回第一个选项
all_selected_options() 返回所有的选项
options()返回所以的选择项
all_selected_options()返回所以已选中的选择项
first_selected_option()返回选中的第一个选择项

小试牛刀

方法也认识了,select也知道是什么样子的了,那么我们开始进行操作

1、想要操作select,首先定位到select上,然后进行实例化

2、通过Select进行通过下标,value,text进行定位下拉框

3、加入判断预期值是否切换到下拉框中

from selenium import webdriver
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.select import Select
from selenium.webdriver.common.by import By
import time
driver = webdriver.Chrome()
path = r'E:\web\select.html'
driver.get(path)
# 通过显示等待的方法判断元素是否出现
WebDriverWait(driver,10).until(EC.visibility_of_element_located((By.NAME,"anjing")))
select = driver.find_element_by_name('anjing')
# 根据下标进行选择,从0开始
Select(select).select_by_index(1)
time.sleep(2)
# 根据value的值选择
Select(select).select_by_value('daily')
time.sleep(2)
# 根基text选择
Select(select).select_by_visible_text('关注了吗?')
time.sleep(2)
# 判断选择是否预期
WebDriverWait(driver,20).until(EC.element_located_to_be_selected((By.XPATH,'//*[contains(text(),"关注了")]')))

展示图:

e8930da2efe3da6a6a6405382fd39484.gif

这里安静主要通过一个小的例子,然后如何通过Selenium操作下拉框的小案例。这里安静提示大家,如果遇到哪些没有见过的库,可以去看看源码,其实源码中已经写的很清楚了。

这里安静写的文章如果对您有帮助,点个关注,持续更新。不懂的或者写错的地方,可以下方留言。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/446066.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux加密框架 crypto 算法管理 - 创建哈希算法实例

crypto_alloc_ahash函数 加密框架中的哈希算法可以是同步方式实现的也可以是异步方式实现的&#xff0c;但是算法应用不关注哈希算法的实现方式&#xff0c;关注的是哈希算法提供的算法接口。为实现统一管理&#xff0c;加密框架默认哈希算法的实现方式为异步方式&#xff0c;…

发票管理软件_企业为什么需要ERP企业管理软件?

对于一个制造企业来说&#xff0c;生产是企业最大的动力&#xff0c;而生产也需要进行优化管理&#xff0c;一个好的生产管理方式会带给企业巨大的发展空间和利润价值。对于一个制造企业来说&#xff0c;生产是企业最大的动力&#xff0c;而生产也需要进行优化管理&#xff0c;…

python 画风场 scipy_Python数据分析及可视化实例之Scipy

强大到没有朋友的科学计算库&#xff0c;不知道怎么介绍ta&#xff01;大牛张若愚出了厚本的《Python 科学计算》第二版里面包罗万象&#xff0c;就不做搬运工了&#xff0c;尽快开工pandas。来一弹在NLP自然语言处理中用到的稀疏矩阵处理&#xff1a;# coding: utf-8# # 稀疏矩…

linux加密框架 crypto 算法管理 - 应用角度讲解加密框架的运行流程

参考链接 Linux加密框架的应用示例&#xff08;一&#xff09;_家有一希的博客-CSDN博客 本文大纲 本节将从应用角度说明加密框架的运行流程&#xff0c;包括加密框架如何管理算法、如何动态创建算法&#xff0c;应用模块如何创建算法实例、如何通过算法实例调用算法接口等。…

java 累进计费率计算_设计费400万,缴纳所得税100万,如何筹划

很多公司老板都会把利润放在第一位&#xff0c;照理说这是没错的&#xff0c;公司要盈利才能继续经营下去。我国有很多针对小微企业的政策&#xff0c;盈利不高的情况下&#xff0c;基本不会去考虑纳税问题&#xff0c;也没有多少税收压力。但是对一些暴利的服务型行业、软件设…

linux加密框架 crypto 算法管理 - 哈希算法应用实例

参考链接 Linux加密框架应用示例&#xff08;二&#xff09;_家有一希的博客-CSDN博客linux加密框架 crypto 算法管理 - 应用角度讲解加密框架的运行流程_CHYabc123456hh的博客-CSDN博客 在应用模块中创建并初始化哈希算法实例 假设某个SA配置使用的认证算法为"hmac(md5…

guido python正式发布年份_Python语言适合哪些领域的计算问题? (1.3分)_学小易找答案...

【单选题】关于Python中的复数,下列说法错误的是 (1.3分)【多选题】药物作用的基本规律包括?【单选题】Python 中,以下哪个赋值操作符是错误的? (1.3分)【单选题】哪个选项是下面代码的执行结果? s "abcd1234" print ( s . find ( "cd" )) (1.3分)【填…

Linux加密框架 crypto crypto_larval | crypto_larval_alloc | __crypto_register_alg 介绍

参考链接 Lniux加密框架中的主要数据结构&#xff08;五&#xff09;_家有一希的博客-CSDN博客crypto_larval struct crypto_larval {struct crypto_alg alg;struct crypto_alg *adult;struct completion completion;u32 mask; };结构体名叫 crypto_larval &#xff08;算法幼…

好玩的脚本代码大全_Github | 推荐一个Python脚本集合项目

点击上方"蓝字"关注我们Python大数据分析记录 分享 成长用python写小脚本是一件好玩的事情&#xff0c;因为不是个大活儿&#xff0c;而且能解决眼边前十分繁琐的事情&#xff0c;这种轻松且便宜的代码颇受人民群众的欢迎~有点生活小妙招的意味大家较为熟知的脚本…

linux加密框架 crypto 算法管理 - 算法查找接口

参考链接 Linux加密框架的算法管理&#xff08;二&#xff09;_家有一希的博客-CSDN博客linux加密框架 crypto 算法管理 - 算法查找接口 crypto_find_alg_CHYabc123456hh的博客-CSDN博客linux加密框架 crypto 算法管理 - 算法查找接口 crypto_alg_mod_lookup_CHYabc123456hh的…

python中以下关于列表描述错误的_10. 以下关于列表操作的描述,错误的是:_学小易找答案...

【单选题】Python 语句 a1211.21 print(type(a)) 的输出结果为( )【单选题】Python语句序列"s1 [4, 5, 6]; s2 s1; s1[1]0; print(s2)"的运行结果是( )。【填空题】Python语句print(%d%%%d%(3/2, 3%2))的运行结果是( 1 )。【单选题】python语句print(type(123))的数…

写论文注意事项

参考链接 给研究生修改了一篇论文后&#xff0c;该985博导几近崩溃…… 重点分析 摘要与结论几乎重合 这一条是我见过研究生论文中最常出现的事情&#xff0c;很多情况下&#xff0c;他们论文中摘要部分与结论部分重复率超过70%。对于摘要而言&#xff0c;首先要用一小句话引…

xml模糊查询语句_2Mybatis学习笔记07:动态SQL语句(原创,转载请注明来源)

开发环境&#xff1a;硬件环境&#xff1a;Windows10JDK 1.8&#xff1b; 软件环境&#xff1a;JavaEclipseMybatismaven3.6tomcat8.0Postgresql 10.6&#xff1b; 用到的jar包&#xff1a; asm-3.3.1.jar cglib-2.2.2.jar commons-logging-1.1.1.jar javassist-3.17.1-GA.jar …

硬件密码组件的硬件结构、作用及实现应用设计

引 言 1 硬件密码组件的概念 密码技术是解决信息安全问题的核心技术。要实现信息的保密性、完整性、可控性和不可否认性等安全要求&#xff0c;都离不开密码技术的运用。在具体的信息安全系统中&#xff0c;密码技术的运用可以基于软件密码组件&#xff08;简称为SCM&#xf…

sql倒序查询语句_SQL丨1.基本查询语句复习

此为自用查询语句1.selectSELECT column1,column2 FROM table1;常用的格式惯例&#xff1a;大写了SELECT和FROM&#xff0c;而将表名和列名小写&#xff1b;通常在列名中使用下划线&#xff0c;避免使用空格&#xff1b;在每个语句末尾添加分号&#xff1b;SQL不区分大小写。2.…

基于区块链的档案共享 项目启动

注意事项 已经备份了一个配置fabric的完整ubuntu系统&#xff0c;其需要注意的细节如下1&#xff0c;此镜像系统需要配置host文件&#xff0c;sudo vim /etc/hosts&#xff0c;添加如下内容127.0.0.1 orderer.example.com peer0.org1.example.com peer1.org1.example.c…

知道一点怎么设直线方程_【初中数学】反比例函数策略(二) ——构造方程法...

【相关阅读】【初中数学】反比例函数策略之一 ——数形结合反比例函数策略(二)——构造方程法(王 桥)上一次&#xff0c;咱们探讨了解决反比例函数的策略一——数形结合&#xff0c;本节课我们继续反比例函数的策略(二)——构造方程法。构造方程法&#xff0c;在《春季攻势》第…

音视频处理 C语言编译器

命令 gcc/clang -g -O2 -o test test.c -I ... -L ... -lgcc Linux环境下的命令&#xff1b;clang是MAC环境下的执行命令-g 输出文件中的调试信息-O 对输出文件进行指令优化-o 输出文件&#xff0c;可执行文件-I 指定头文件&#xff0c;大写的i 从-I 开始 是链接内容&#x…

wpf将文字转化为图形_将创新转化为实际应用

Worldsensing是全球公认的物联网先驱。这家位于西班牙巴塞罗那的技术供应商成立于2008年&#xff0c;为城市和传统行业提供运营情报。伊格纳西维拉霍萨纳(IgnasiVilajosana)是公司联合创始人兼首席执行官。伊格纳西拥有西班牙巴塞罗那大学物理学博士学位&#xff0c;还接受过美…

音视频处理 FFmpeg相关内容介绍 以及八大

FFmpeg的介绍 FFmpeg由Fabrice Bellard于2000年创建&#xff0c;由C和汇编语言进行开发FF -> Fast Forward 快进mpeg -> 标准化组织 Moving Pictures Experts Group使用到FFmpeg的开源项目gstreamer: a framework for streaming mediachromiummpv: Command line video pl…