吾八哥学Selenium(四):操作下拉框select标签的方法

摘要:
当我们进行网页自动化测试时,我们经常会遇到标记的下拉框。我们如何在Python中操作此控件?测试的html页面代码是:学习Python-硒学习测试页面请选择2018年春节回家的方式!Python代码如下:#Autor:5bug#WebSite:http://www.XuePython.wang#学习Python QQ群:643829693来自selenium从selenium导入webdriver。webdriver。支持selectimportSelectdriver=webdriver。色度转换器。maximize_ Window()驱动程序。getsel=选择#打印itemsel的所有下拉框选项。options:print#选择回家的路。如果您想选择另一种方式,请输入相应的值参数到sel.select_by_value('1')的操作效果如下:实际上,工作中有一个下拉框输入,我们将在后面介绍!

我们在做web页面自动化测试的时候会经常遇到<select></select>标签的下拉框,那么在Python里如何实现去操作这种控件呢?今天就给大家分享一下这个玩法。为了让大家学习更方便,我准备了一个测试页面。

测试的html页面代码为:

<html>
<head>
<title>学Python网 - Selenium学习测试页面</title>
<body>
请选择2018年春节回家的方式!
<select     onchange="" name="traffic">
    <option value="">买不到票</option>
    <option value="0">火车</option>
    <option value="1">飞机</option>
    <option value="2">汽车</option>
	<option value="3">轮船</option>
    <option value="4">自驾</option>
	<option value="5">摩托车</option>
	<option value="6">自行车</option>
</select>
</body>
</head>
</html>

根据html源代码简单分析下,该select标签有id,那么我们就可以使用find_element_by_id来定位了,当然xpath的方式肯定也是可行的!Python代码如下:

# Autor: 5bug
# WebSite: http://www.XuePython.wang
# 学Python网QQ群: 643829693
from selenium import webdriver
from selenium.webdriver.support.select import Select

driver = webdriver.Chrome("C:Program Files (x86)GoogleChromeApplicationchromedriver.exe")
driver.maximize_window()
driver.get('file:///E:MyCodesPythondemosXuePython.wangSeleniumTest.html')
sel =Select(driver.find_element_by_id('traffic'))
#打印所有的下拉框选项
for item in sel.options:
  print(item.text)
#选择回家方式 若要选择其他的方式则输入相对应的value参数即可
sel.select_by_value('1')

运行效果如下:

QQ图片20180131235924.png

实际上在工作中还有一种下拉框input,这个我们后面再介绍了!这里只是给大家做个入门的引导,遇到问题的可以在QQ群里互相交流!

本文首发吾八哥个人博客:http://www.5bug.wang

免责声明:文章转载自《吾八哥学Selenium(四):操作下拉框select标签的方法》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇HOOK使用:全局键盘钩子[windows]命令行关机或重启电脑下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Selenium

今天突然想了解下Selenium。虽然很久以前,有特意学过Selenium,也用C#写入测试样例,但由于那时什么都没有记录下来,之前积累的经验为0了。以后对自己做过的项目,学过的技术,过一段时间后,要进行总结。自己写的 StartSelenium.bat 脚本 java -jar "D:Selemiumselenium-server-standalone-...

Oracle中rownum的基本用法

Oracle中rownum的基本用法 对于rownum来说它是oracle系统顺序分配为从查询返回的行的编号,返回的第一行分配的是1,第二行是2,依此类推,这个伪字段可以用于限制查询返回的总行数,且rownum不能以任何表的名称作为前缀。 (1) rownum 对于等于某值的查询条件如果希望找到学生表中第一条学生的信息,可以使用rownum=1作为条件。...

Java Selenium3 WebDriver启动火狐、Chrome、IE,Edge浏览器的方法(一)

selenium3和selenium2没有太大的区别,就是精简了一些不用的东西,对浏览器的支持更好了,比如对高版本的浏览器(FireFox,Chrome,Edge等)可以完美的支持,不用受限于版本的问题 下面总结一下启动常用浏览器的方法 前提 安装好java的环境配置 新建一个maven工程 在maven的pom文件加入selenium的依赖包(版本可根...

python png与jpg的相互转换

python将PNG格式的图片转化成为jpg """ 先来说一下jpg图片和png图片的区别 jpg格式:是有损图片压缩类型,可用最少的磁盘空间得到较好的图像质量 png格式:不是压缩性,能保存透明等图 """ from PIL import Image import cv2 as cv import os def PNG_JP...

Django基础(1)

昨日内容回顾: 1. socket创建服务器 2. http协议: 请求协议 请求首行 请求方式 url?a=1&b=2协议 请求头 key:value 请求体 a=1&b=2(只有post请求才有请求体) 响应协议...

使用Python进行PDF图片识别OCR

使用场景 使用图片识别可以快速提取图片中的信息,方便高效。 Python并不能直接对PDF进行识别,所以如果是识别PDF的话,需要先将PDF转化为图片,然后再进行识别。 必备工具 Python  可以安装3.7及以上版本 tesseract-ocr  下载地址: https://github.com/UB-Mannheim/tesseract/wiki 使...