No.2 selenium学习之路之八种基本定位
selenium的八种定位方式
1.通过id定位 find_element_by_id()
send_keys() 输入框输入字符串
click() 鼠标点击事件
注:send_keys输入中文时,需要在前面添加“u”
表示把输入的中文转换成unicode国际编码
Text可以打印元素的文本信息
2.通过name定位
find_element_by_name()
3.通过class定位
find_element_by_class_name()
Class中有空格是多重属性,取其中一个就行
4.通过tag定位
find_element_by_tag_name()
页码上标签一样的很多,那么通过tag是无法定位到某个元素
通常用于定位一组元素
5.通过link定位
find_element_by_link_text()
Link是一个链接点击后可以跳转到指定页面
Link都有href属性
6.通过partial link定位
find_element_by_partial_link_text()
一个很长的文本,可以截取部分定位
7.XPath是一种在XML文档中定位元素的语言
//表示当前页面某个目录下,input表示单位元素的标签名,[@id= 'kw' ]表示这个元素的id属性值等于kw,如果不想制定标签名,也可以用星号(*)代替,表示当前节点
driver.find_element_by_xpath("//input[@id='kw']").send_keys("123")
driver.find_element_by_xpath(".//*[@id='su']").click()
8.CSS定位
driver.find_element_by_css_selector("#kw").send_keys("123")
定位单一元素时,要保证元素是唯一的。
把定位工具切换到HTML,然后输入元素,确定是否是唯一
find_element()方法只用于定位元素
需要两个参数,一个是定位方式,一个是定位的值。
定位方式by,需要导入by类:
from selenium.webdriver.common.by import By
find_element(By.ID,"kw")
Typy(数据) 打印数据类型
Elements
用于定位一组数据,用复数定位,保存后可以查看类型 type()
然后通过下标可以取出其中某一个元素.
常规操作:
1.切换iframe
driver.switch_to_frame("x-URS-iframe")
2.清空输入框
find_element_by_name("email").clear()
3.输入文本信息
send_keys()
4.鼠标单击
click(0
5.模拟回车操作
submit()
模拟回车的时候,需要光标在密码框
No.2 selenium学习之路之八种基本定位的更多相关文章
- No.10 selenium学习之路之通过元素定位获取属性
1. implicitly_wait()隐形等待.等待页面加载完成,作用是全局的. 时间可以设置的长,短时间也没有影响.直到设置的时间耗完 时间耗完也不会报错 2.获取title值 driver.ti ...
- selenium 学习之路开始了,一遍搬一遍理解学习,加油!!!
selenium 学习之路开始了,一遍搬一遍理解学习,加油!!!
- selenium自动化测试——常见的八种元素定位方法
selenium常用的八种元素定位方法 1.通过 id 定位:find_element_by_id() 2.通过 name 定位:find_element_by_name() 3.通过 tag 定位: ...
- [原创]java WEB学习笔记79:Hibernate学习之路--- 四种对象的状态,session核心方法:save()方法,persist()方法,get() 和 load() 方法,update()方法,saveOrUpdate() 方法,merge() 方法,delete() 方法,evict(),hibernate 调用存储过程,hibernate 与 触发器协同工作
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...
- No.1 selenium学习之路之浏览器操作
selenium基础,首先就是浏览器的相关操作 下面描述几种浏览器的常用操作 1.打开浏览器 webdriver后面添加想要打开的浏览器 Ie或者Chrome 2.打开指定页面(百度) 3.休眠时间 ...
- No.20 selenium学习之路之文件读写
1.open 使用open打开文件后一定要记得调用文件对象的close()方法.比如可以用try/finally语句来确保最后能关闭文件. file_object = open('thefile.tx ...
- No.17 selenium学习之路之判断与等待
一.三种等待方式 1.sleep 加载time库.time.sleep() 休眠单位以秒为单位 2.implicitly_wait() 等待页面完全加载完成(左上角转圈结束) 参数为等待时间,等待页面 ...
- No.16 selenium学习之路之异常处理
一.常见的几种异常: SyntaxError:语法错误 NameError:试图访问的变量名不存在 IndexError:索引错误,使用的索引不存在,超出序列范围 KeyError:使用了不存在的关键 ...
- No.6 selenium学习之路之下拉框Select
HTML中,标签显示为select,有option下拉属性的为Select弹框 1.Xpath定位 Xpath语法,顺序是从1开始,编程语言中是0开始
随机推荐
- git<Commit和Push的区别>
git作为支持分布式版本管理的工具,它管理的库(repository)分为本地库.远程库. git commit操作的是本地库,git push操作的是远程库. git commit是将本地修改过的文 ...
- 字符串化#、拼接字符##和可变参数宏(...和_ _VA_ARGS_ _)
宏定义的使用与注意事项 ##是一个连接符号,用于把参数连在一起 #是“字符串化”的意思.出现在宏定义中的#是把跟在后面的参数转换成一个字符串#define paster( n ) printf( &q ...
- jenkins权限管理,不同用户显示不同项目
1.安装Role-based Authorization Strategy插件 系统管理-管理插件-可选插件中安装Role-based Authorization Strategy 安装后重启jenk ...
- 百度语音合成 composer
https://packagist.org/packages/jormin/baidu-speech http://ai.baidu.com/docs#/TTS-Online-PHP-SDK/top
- Docker应用二:docker常用命令介绍
Docker常用命令使用介绍 docker中常用的命令: 1.docker search image_name:搜查镜像 2.docker pull image_name:从镜像库中拉去镜像 3.d ...
- html5页面头部
<base href="/bulid/"/> <meta charset="UTF-8"/> <meta http-equiv=& ...
- angularjs的Controller as
<html ng-app="notesApp"> <head><title>Notes App</title></head&g ...
- COGS 1516. 棋盘上的车
COGS 1516. 棋盘上的车 http://www.cogs.pro/cogs/problem/problem.php?pid=1516 ☆ 输入文件:rook.in 输出文件:rook. ...
- 高效使用jquery之一:请使用'On'函数
on函数是在jquery 1.7 加入的 描述: 在选定的元素上绑定一个或多个事件处理函数. 定义:.on( events [, selector ] [, data ], handler(event ...
- 【JAVA】配置JAVA环境变量,安装Eclipse
Java程序依赖JDK,就像C#程序依赖.NetFrameWork一样. 所以在开发之前,必须在win7或者是linux上,安装jdk(JavaDevelopkit)里面包括java一些工具,还有JR ...