Python-webdriver 怎么定位下拉列表中的元素呢
来源:互联网 发布:宝宝日期照相软件 编辑:程序博客网 时间:2024/05/09 12:51
Python-webdriver 怎么定位下拉列表中的元素呢
如果是 select > option*x 结构的话,一般有以下几种做法:
1,定位父元素select(下面语句中的id=aaa),然后通过tag name找到所有option,得到option元素的数组,然后通过数组索引([1])定位,最后click.
driver.find_element_by_id(
"aaa"
).find_elements_by_tag_name(
"option"
)[
1
].click();
2 , 跟第1条差不多思想,不过用option元素的value属性来定位了,下面代码是通过xpath来写的,可以换成 by_css.
driver.find_element_by_xpath(
"//select[@id='aaa']"
).find_element_by_xpath(
"//option[@value='5PM']"
).click()
3, 用到了Select类, 实例select对象有很多方法:
deselect_all(),全不选。
deselect_by_index(index),不选第 index 项。或者是 index+1项,忘了index从0 还是从1 开始了。
deselect_by_value( value),不选元素value属性为value的项,听着有点拗口,其实value值就是option标签中value的值。
deselect_by_visible_text( text),不选标签innerHTML为text的option
select_by_index( index),同上,选择第 index 项。这个用于 option的text和value不固定的情况
select_by_value( value), 同上,选择。
select_by_visible_text( text),同上,选择。
from
selenium.webdriver.support.ui
import
Select
select
=
Select(driver.find_element_by_id(
"aaa"
))
select.deselect_all()
select.select_by_visible_text(
"Edam"
)
基本就这些吧。掌握了这几条,所有的 select 下拉框应该难不住楼主了。网站还有一些用js或者jq模拟出来的下拉框,另作其他处理,在这里就不展开了。
最后 selenium官网 有webdriver的完整文档,包括很多种编程语言版本。可以去看看:selenium官网
- Python-webdriver 怎么定位下拉列表中的元素呢
- Webdriver定位之iframe中的元素定位
- python selenium 下拉列表定位
- Python学习_我该怎么修改列表中的元素
- WebDriver--定位UI元素
- selenium webdriver定位元素
- webdriver元素定位方法
- webdriver定位不到元素
- webdriver定位元素技巧
- webdriver-定位一组元素
- webdriver 定位元素
- selenium webdriver元素定位
- webdriver基础python版(二)简单的元素定位
- selenium+webdriver+python定位不到元素的原因及解决办法
- python+selenuim webdriver 页面跳转后如何定位元素
- 轻松自动化---selenium-webdriver(python) (三) 简单元素的定位
- 轻松自动化---selenium-webdriver(python) (四)--如何定位一组元素?
- selenium webdriver 元素定位常见问题
- js-练习:输入阿拉伯数字的金额,转换成大写汉字输出
- Git SSL公钥密钥生成方式(Eclipse,Tortoise Git,命令行)
- jquery数组操作
- Android-XML绘图
- 数据库 软件安全测试之SQL注入
- Python-webdriver 怎么定位下拉列表中的元素呢
- JavaScript中call,apply,bind方法的总结
- 多态
- webshell网络资料整理
- Unity 2017引入的新图集方式
- 链表
- eclipse 中使用maven
- grails domain 如何不生成对应的表、如何不生成某些字段的表字段等
- linux下MongoDB安装