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开始
随机推荐
- 【bzoj2741】[FOTILE模拟赛] L
Portal --> bzoj2741 Solution 突然沉迷分块不能自拔 考虑用分块+可持久化trie来解决这个问题 对于每一块的块头\(L\),预处理\([L,i]\)区间内的所有子区间 ...
- 4.tar的各个参数详解
转于:https://blog.csdn.net/liuyundemhsg/article/details/52525028 参数:-c :建立一个压缩文件的参数指令(create 的意思):-x : ...
- ubuntu vim 配置
set nuset autoindent cindentmap<F9> :w<cr> :!g++ -O2 -o %< % -Wall<cr>map<F1 ...
- poj 2774 后缀数组 两个字符串的最长公共子串
Long Long Message Time Limit: 4000MS Memory Limit: 131072K Total Submissions: 31904 Accepted: 12 ...
- Discuz!论坛基本搭建
Crossday Discuz! Board(简称 Discuz!)是北京康盛新创科技有限责任公司推出的一套通用的社区论坛软件系统 一.LAMP环境搭建 参考地址:http://www.cnblogs ...
- Window10+Python3.5安装opencv
Window10+Python3.5安装opencv 标签: opencvpython 2017-05-14 16:47 2201人阅读 评论(0) 收藏 举报 分类: Python编程(41) ...
- 动态规划:POJ No 2385 Apple Catching
#include <iostream> #include <cstdio> #include <algorithm> #include <cstring> ...
- Nginx错误日志与优化专题
一.Nginx配置和内核优化 实现突破十万并发 二.一次Nignx的502页面的错误记录 (1)错误页面显示 错误日志: // :: [error] #: * recv() failed (: Con ...
- MYSQL 在当前时间加上或减去一个时间段
update user set time1=now(),time2=date_add(NOW(), interval 1 MONTH) where id=1; date_add() 增加date_su ...
- 算法: 排序: 归并排序(Merge)
http://www.codeproject.com/Articles/805587/Merge-Sort