Selenium入门系列4 选择并操作一组元素
选中一组元素的方式也是8种,与选中单个元素一一对应。区别只在于element与elements。elements取到的是一个数组,element取符合条件的第一个元素。
首先在脚本的目录下新建test.html文件,将下面的内容拷贝进去保存。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>测试页面</title>
</head>
<body> <form action="" style="font-size: 30px;color:#00ccff;">
<input type="checkbox">check1<br>
<input type="checkbox">check2<br>
<input type="checkbox">check3<br>
<input type="checkbox">check4<br>
<input type="checkbox">check5<br>
</form>
<hr>
<form action="" style="font-size: 30px;color:#cc00ff;">
<input type="radio" name>radio1<br>
<input type="radio" name>radio2<br>
<input type="radio" name>radio3<br>
</form>
</body>
</html>
编写脚本python脚本
#coding=utf-8
#获取一组元素,再循环操作 from selenium import webdriver
import time driver=webdriver.Firefox() driver.get('file:///F:/selenium/test.html')
#获取页面所有的input,再判断是否是复选框,选中所有复选框
inputs=driver.find_elements_by_tag_name("input")
for inputtag in inputs:
if inputtag.get_attribute("type") == "checkbox":
inputtag.click()
time.sleep(0.5) #获取页面所有的复选框,去掉勾选
checkboxes = driver.find_elements_by_css_selector("input[type=checkbox]")
print('the num of checkbox is ',len(checkboxes))#复选框个数
for checkbox in checkboxes:
checkbox.click() #点击最后一个单选框
driver.find_elements_by_css_selector("input[type=radio]").pop().click()
#点击第二个checkbox
driver.find_elements_by_css_selector("input[type=checkbox]")[1].click() time.sleep(2)
driver.quit()
Selenium入门系列4 选择并操作一组元素的更多相关文章
- Selenium 2自动化测试实战14(定位一组元素)
一.定位一组元素 WebDriver还提供了与前面所对应的8钟用于定位一组元素的方法.定位一组元素的方法与定位单个元素的方法类似,唯一的区别是在单词element后面多了一个S表示复数.定位一组元素一 ...
- jQuery碎语(1) 基础、选择要操作的元素、处理DOM元素
1.基础 jquery对象集: $():jquery对象集合 获取jquery对象集中的元素: 使用索引获取包装器中的javascript元素:var temp = $('img[alt]')[0] ...
- JQUERY选择和操作DOM元素(利用正则表达式的方法匹配字符串中的一部分)
JQUERY选择和操作DOM元素(利用正则表达式的方法匹配字符串中的一部分) 1.匹配属性的开头 $("[attributeName^='value']"); 2.匹配属性的结尾 ...
- Java&Selenium调用JS实现高亮被操作页面元素高亮
Java&Selenium调用JS实现高亮被操作页面元素高亮 /* * the method of invoking js to do something * * @author daviey ...
- linux入门系列2--CentOs图形界面操作及目录结构
上一篇文章"linux入门系列1--环境准备及linux安装"直观演示了虚拟机软件VMware和Centos操作系统的安装,按照文章一步一步操作,一定都可以安装成功.装好系统之后, ...
- 选择、操作web元素-3
11月5日 Selenium 作业 3 登录 51job , http://www.51job.com 输入搜索关键词 "python", 地区选择 "杭州"( ...
- 选择、操作web元素
11月1日 什么是web元素 Selenium自动化主要就是:选择界面元素,操作界面元素(输入操作:点击.输入文字.拖拽等,输出操作:获取元素的各种属性),根据界面上获取的数据进行分析和处理 选择元素 ...
- Xpath选择、操作web元素
11月6日 xpath选择 XPath(XML Path Language)是W3C(World Wide Web Consortium)定义的用来在XML文档中选择节点的语言, 主浏览器也支持XPa ...
- Selenium with Python 005 - 调用js操作页面元素
WebDriver提供了execute_script()方法来执行JavaScript方法,格式如 driver.execute_script(script,*args) 执行js一般有两种场景,一是 ...
随机推荐
- django权限二(多级菜单的设计以及展示)
多级权限菜单设计级标题栏 我们现在只有数据展示,要进入其他url还需要手动的输入路径,非常的麻烦,所以我们要设计 一个导航栏以及侧边多级菜单栏,这个展示是通过stark组件的设计的增删改查页面,而 每 ...
- iOS自动化测试的那些干货
前言 如果有测试大佬发现内容不对,欢迎指正,我会及时修改. 大多数的iOS App(没有持续集成)迭代流程是这样的 也就是说,测试是发布之前的最后一道关卡.如果bug不能在测试中发现,那么bug就会抵 ...
- ftp功能深度剖析 + 线程 031
一 打印进度条 import time for i in range(20): # \r 回到行首打印内容 如果有同一行内容,那么就被抹掉了 n = '>'* i print('\r%s'%n, ...
- bios-----> grub
系统有两块硬盘, 第一块安装的win7, 第二块安装ubuntu 默认从sda加载grub 如果在bios页面选择从sdb启动,会找不到grub 进入原来的sda系统, grub-install / ...
- pip安装python库
- 使用EventBus实现兄弟组件之间的通信
使用EventBus实现兄弟组件之间的通信 需求:为了实现菜单折叠的效果,例如http://blog.gdfengshuo.com/example/work/#/dashboard header组件和 ...
- Mybatis学习笔记12 - 动态sql之choose(when otherwise)标签
choose (when, otherwise):分支选择:带了break的swtich-case 示例代码: 接口定义: package com.mybatis.dao; import com.my ...
- Textchangedlistener的用法
searchet.addTextChangedListener(new TextWatcher() { @Override public void beforeTextChanged(CharSequ ...
- LeetCode 860.柠檬水找零(C++)
在柠檬水摊上,每一杯柠檬水的售价为 5 美元. 顾客排队购买你的产品,(按账单 bills 支付的顺序)一次购买一杯. 每位顾客只买一杯柠檬水,然后向你付 5 美元.10 美元或 20 美元.你必须给 ...
- MVC4 过滤器使用和怎样控制全部action和部分action
MVC中的过滤器分四种分别为:IActionFilter(动作过滤器), IAuthorizationFilter(授权过滤器), IExceptionFilter(异常过滤器), IResultFi ...