uniquefu Python+Selenium学习--select
场景
在处理下拉框(select)的时候selenium给我们提供了一系列的便捷方法,我们只需要使用selenium.webdriver.support.select.Select
类来稍微封装一下就好了。
下面是我们经常会用到的一些方法
- options: 返回下拉框里所有的选项
- all_selected_options: 返回所有选中的选项
- select_by_value(value): 通过option的value值来选择
- select_by_index(index) 通过option的顺序来选择
- select_by_visible_text(text): 通过option的text来选择
代码
s7.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form enctype="multipart/form-data">
<div> <textarea name="meno" >123456</textarea> <select name="city" >
<option value="beijing">北京</option>
<option value="shanghai">上海</option>
<option value="nanjing" selected="selected">南京</option>
<option value="chengdu">成都</option>
</select> <input type="submit" value="提交" />
<input type="reset" value="重置" />
</div>
</form>
</body>
</html>
select--tag.py
#!/usr/bin/env python
# -*- codinfg:utf-8 -*-
'''
@author: Jeff LEE
@file: select--tag.pay
@time: 2018-05-10 10:44
'''
from selenium import webdriver
from selenium.webdriver.support.select import Select
from time import sleep
import os if 'HTTP_PROXY'in os.environ:
del os.environ['HTTP_PROXY'] dr = webdriver.Firefox()
file_path ='file://'+ os.path.abspath('s7.html')
print (file_path)
dr.get(file_path) city_selector = Select(dr.find_element_by_tag_name('select')) # 返回所有的options
print(city_selector.options)
sleep(1) # 返回所有选中的options
print(city_selector.all_selected_options)
sleep(1) # 通过option的value值来选择上海
city_selector.select_by_value('shanghai')
sleep(2) # 通过index来选择,比如选择第4项
city_selector.select_by_index(3)
sleep(1) # 通过option的text来选择
city_selector.select_by_visible_text('北京') dr.quit()
uniquefu Python+Selenium学习--select的更多相关文章
- 【python+selenium学习】Python常见错误之:IndentationError: unexpected indent
初入python+selenium学习之路,总会遇到这样那样的问题.IndentationError: unexpected indent,这个坑我已经踏进数次了,索性记录下来.都知道Python对代 ...
- Python+Selenium学习--自动化测试模型
前言 一个自动化测试框架就是一个集成体系,在这一体系中包含测试功能的函数库.测试数据源.测试对象识别标准,以及种可重用的模块.自动化测试框架在发展的过程中经历了几个阶段,模块驱动测试.数据驱动测试.对 ...
- Python+Selenium学习笔记15 - 读取txt和csv文件
读取txt的内容并用百度查找搜索 1 # coding = utf-8 2 3 from selenium import webdriver 4 import time 5 6 # 打开浏览器 7 d ...
- Python+Selenium学习--自动生成HTML测试报告
前言 在脚本运行完成之后,除了在log.txt 文件看到运行日志外,我们更希望能生一张漂亮的测试报告来展示用例执行的结果. HTMLTestRunner 是Python 标准库的unit ...
- Python+Selenium学习--异常截图
前言 Webdriver 提供错误截图函数get_screenshot_as_file(),可以帮助我们跟踪bug,在脚本无法继续执行时候, get_screenshot_as_file()函数将截取 ...
- Python+Selenium学习--cookie处理
场景 有时候我们需要验证浏览器中是否存在某个cookie,因为基于真实的cookie 的测试是无法通过白盒和集成测试完成的.webdriver 可以读取.添加和删除cookie 信息.webdrive ...
- Python+Selenium学习--控制浏览器控制条
场景 有时候web 页面上的元素并非直接可见的,就算把浏览器最大化,我们依然需要拖动滚动条才能看到想要操作的元素,这个时候就要控制页面滚动条的拖动,但滚动条并非页面上的元素,可以借助JavaScrip ...
- Python+Selenium学习--分页处理
场景 我们在测试一个web 应用时,经常出现翻页的情况,下面介绍翻页场景 代码 #!/usr/bin/env python # -*- codinfg:utf-8 -*- ''' @author: J ...
- Python+Selenium学习--下拉框处理
场景 下拉框也是web 页面上非常常见的功能,webdriver 对于一般的下拉框处理起来也相当简单,要想定位下拉框中的内容,首先需要定位到下拉框:这样的二次定位 下拉框一般有以下两种方式: 鼠标移上 ...
随机推荐
- delphi 调用 c++builder
delphi 调用 c++builder c++builder 调用delphi 混合调用,mix https://community.embarcadero.com/blogs/entry/mixi ...
- English-旅游英语及情景对话
1.旅游英语:预订机票情景对话及常用句型 目前,越来越多的人都选择以飞机为出行方式.但是如何用一口流利的英语订机票呢?这里我们替你总结了一些情景对话,还有一些常用的句型.大家都来学一学吧~A:Good ...
- pycharm 直接删掉数据表之后,makemigration和migrate 之后,数据库中依然没有生成数据表的问题
综合分析一下行程这个问题的原因: 在终端中运行 select * from django_migrations; 查看 提交的记录,如果你的表删掉了,记录还在,那么数据库会觉得,这个表依然是存在的,所 ...
- 如何查看一个class文件是否正确
今天碰到了个问题,左思右想就是找不出问题,试验多个路径来解决问题,错误依旧. 然后我拿到了现场的包,一个很大的问题让我忽略了,这个class文件用反编译程序打不开(jd-gui.exe),非常神奇,但 ...
- maven ,添加加密算法 apache commons-codec.jar 包
在百度搜索commons-codec.jar maven , http://mvnrepository.com/ 到 maven 库搜索 commons-codec.jar maven .你需要添加 ...
- 找某個ColumnName在那些Tables
想找ColumnName叫CRE_USR的欄位在那些Table呢? (For SQL Server) SELECT o.name, o.* FROM syscolumns c INNER JOIN s ...
- http post 接口
集团需求管理系统通过网状网与给各省公司需求管理系统进行交互.落地方为发起方提供访问的URL,发起方使用HTTP POST方法发送请求报文并得到应答报文,发起方作为落地方的HTTP客户端,落地方作为发起 ...
- JAVA面试中的陷阱
第一,谈谈final, finally, finalize的区别.最常被问到. 第二,Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以impl ...
- Hibernate学习笔记2.4(Hibernate的Id生成策略)
通过设置告诉id该怎么设置. 1.通过xml方式 1.assigned 主键由外部程序负责生成,在 save() 之前必须指定一个.Hibernate不负责维护主键生成.与Hibernate和底层数据 ...
- Windows Server 2012开启磁盘性能计数器
Windows Server 2012默认情况下已经禁用了磁盘性能计数器,打开任务管理器后,无法像Win8一样在性能选项卡中看到“磁盘”使用情况,可能是因为微软考虑到安装此服务器系统的硬件都会非常好, ...