Selenium - 元素操作

  • 下拉框才做可以分为两类:

    • select标签的下拉框:使用Select类进行操作;

    • 非select标签的下拉框:一般是 ulli, div 等标签组成,使用元素定位的方法,首先点击下拉框,然后点击选项。

select标签

  • 是针对select标签的操作:

    • from selenium.webdriver.support.select import Select:导入对应的模块

    • select.select_by_index(index):通过索引选择,索引从0开始

    • select.select_by_value(value):通过option标签的value属性选择

    • select.select_by_visible_text(text):通过option标签的文本选择

标签元素示例

<SELECT id="status" style="width:150" name="state" selectedIndex="$!{state}">
<OPTION value="aa">全部</OPTION>
<OPTION value="bb">通过</OPTION>
<OPTION value="cc">末通过</OPTION>
<OPTION value="dd">待处理</OPTION>
</SELECT>

代码实例

from selenium import webdriver
from time import sleep
# 导入对应模块
from selenium.webdriver.support.select import Select driver = webdriver.Chrome()
driver.get('http://www.baidu.com') # 点开下拉框
driver.find_element_by_link_text('下拉框示例').click() # 获取下拉框选项
item = Select(driver.find_element_by_id('status'))
  • 下拉框选择
# 通过索引index选择
item.select_by_index(3) # 通过value值选择
item.select_by_value('cc') # 通过选项文本选择
item.select_by_visible_text('待处理')
  • 下拉框取消选择
# 取消所有选择
item.deselect_all() # 通过索引index取消选择
item.deselect_by_index(3) # 通过value值取消选择
item.deselect_by_value('cc') # 通过选项文本取消选择
item.deselect_by_visible_text('待处理')
  • 返回选择信息
# 返回第一个选中选项
item.first_selected_option() # 返回所有已选中选项
item.all_selected_options()

非select标签

  • 思路 1:下拉框如果可以输入,那就可以当成输入框来输入就行了

    • 1、定位下拉框,并点击展开下拉框

    • 2、在下拉框,输入要点击的内容

    • 3、选中需要点击的内容

TODO
  • 思路 2:定位到每一个下拉选项元素,点击操作

    • 1、定位下拉框,并点击展开下拉框

    • 2、定位需要选中的内容

    • 3、点击元素

TODO

Selenium - 元素操作(3) - 下拉框操作的更多相关文章

  1. selenium webdriver学习(八)------------如何操作select下拉框(转)

    selenium webdriver学习(八)------------如何操作select下拉框 博客分类: Selenium-webdriver   下面我们来看一下selenium webdriv ...

  2. selenium - 下拉框操作

    # 9. 下拉框操作# (1)等待下拉列表和下拉列表中值存在# (2)在下拉列表中选择一个值 # 三种方式# A. 获取所有的下拉列表值,然后用循环去匹配相同的值 select_by_index(下标 ...

  3. JQuery操作select下拉框

    JQuery操作select下拉框 获取Select选择的Text和Value $("#select_id").change(function(){//code...}); //为 ...

  4. jquery操作select下拉框的各种方法,获取选中项的值或文本,根据指定的值或文本选中select的option项等

    简介jquery里对select进行各种操作的方法,如联动.取值.根据值或文本来选中指定的select下拉框指定的option选项,读取select选中项的值和文本等. 这一章,站长总结一下jquer ...

  5. jQuery下拉框操作系列$("option:selected",this) &&(锋利的jQuery)

    jQuery下拉框操作系列$("option:selected",this)  &&(锋利的jQuery) <!DOCTYPE html> <ht ...

  6. web自动化测试—selenium游览器下拉框操作

    # coding=utf-8'''下拉框实战思路导包:from selenium.webdriver.support.select import Select #下拉框select from sele ...

  7. Selenium常用操作汇总二——如何操作select下拉框

    下面我们来看一下selenium webdriver是如何来处理select下拉框的,以http://passport.51.com/reg2.5p这个页面为例.这个页面中有4个下拉框,下面演示4种选 ...

  8. selenium中各个模块操作:下拉框、鼠标悬浮连贯、拼图拖拽操作、以及其他拖拽操作、连线操作

    1.下拉框的修改操作 方法一:定位到元素后,通过select选择对应的值 方法二:通过两次点击的方法:没有select的value属性时,采用click两次的方法去选择: click第一次后,出现下拉 ...

  9. jquery操作select下拉框的多种方法(选中,取值,赋值等)

    Query获取Select选择的Text和Value: 语法解释: 1. $("#select_id").change(function(){//code...}); //为Sel ...

  10. jQuery操作select下拉框的text值和value值的方法

    1.jquery获取当前选中select的text值 $("#select1").find("option:selected").text(); 2.jquer ...

随机推荐

  1. Redis内存淘汰策略

    目录 一.内存淘汰策略重要性 二.Key值过期策略 三.内存淘汰策略 三.Redis内存淘汰策略配置 一.内存淘汰策略重要性 我们都知道redis的性能很高,最主要的原因之一就是redis的数据都在内 ...

  2. Java笔记第五弹

    编码表 将字符存储到计算机中----编码:反之,则为解码: GBK编码:最常用的中文码表 GB18030--最新的中文码表 Unicode字符集:业界的一种标准,也称为统一码.万国码 UTF-8编码: ...

  3. 在surging 微服务引擎下如何搭建webservice和身份验证

    一.前言 现实生产中,有一些比较老的系统对外提供的接口都是WebService,尤其是比较老的系统都是围绕ESB进行搭建,而对外提供就需要WebService ,为了更好完善其解决方案,故集成了web ...

  4. Redis 故障排查

    系统性学习,移步IT-BLOG 要进行 Redis 的故障定位,一般通过分析 Redis 日志.应用日志和 Redis 的监控信息来定位相关问题. 一.Redis 日志设置 [1]日志文件:Redis ...

  5. DDD架构中的领域是什么?

    DDD架构中的领域是什么? ​ 我们经常说到DDD分层架构(领域驱动设计),那么究竟什么是DDD架构?如果去网上查通常会告诉你告诉你区别于过去的三层架构思想,DDD(领域驱动设计)是一种四层架构,一般 ...

  6. idea application.properties图标显示异常(无小树叶)

    项目中(多级模块)如果没有主启动类时,新建的application.properties文件显示图标是文本格式图标,就如第一张图所示 添加该项目该模块下主启动类,就可以解决图标显示问题,也就可以看到可 ...

  7. [C++STL教程]1.vector容器是什么?实用教程来啦!超简单易懂,拿来就用

    C++与传统的C语言有一个很大的区别,就是新增了标准模板库 STL(Standard Template Library),它是 C++ 标准库的一部分,不需要单独安装,只需要 #include 对应的 ...

  8. ACM-NEFU-2020大一寒假培训三(暴力)

    A.二倍的问题 Description 给定2到15个不同的正整数,你的任务是计算这些数里面有多少个数对满足:数对中一个数是另一个数的两倍.比如给定1 4 3 2 9 7 18 22,得到的答案是3, ...

  9. 自编写二进制安装kubernetes脚本v2.0版本

    一键安装 二进制安装Kubernetes(k8s) v2.0 手动安装:https://github.com/cby-chen/Kubernetes 脚本安装:https://github.com/c ...

  10. [Linux/Apache Http]Apache Http(d)服务访问时报: 403 Forbidden You don't have permission to access /cdh/ on this server.

    1 问题描述 http错误代码403:403 Forbidden 资源不可用.服务器理解客户的请求,但拒绝处理它.通常由于服务器上文件或目录的权限设置导致. 2 解决思路 胜利的果实: 确保关闭sel ...