python3 selenium自动化测试 强大的CSS定位方法


Posted in Python onAugust 23, 2019

ccs的优点:css相对xpath语法比xpath简洁,定位速度比xpath快

css的缺点:css不支持用逻辑运算符来定位,而xpath支持。css定位语法形式多样,相对xpath比较难记。

css定位建议多用,这个定位方式很强大,定位速度快且准确度高。至于难记,用熟了就好了,对勤快的人来说,这不是问题。

CSS_selector常用符号:

#

表示id

.

表示class

>

表示子元素,层级

1.通过id属性定位:

find_element_by_css_selector("#id的属性值")

实例:find_element_by_css_selector("#kw")

2.通过class_name属性定位:

find_element_by_css_selector(".class的属性值")

实例:find_element_by_css_selector(".s_ipt")

3.通过其它属性定位:

find_element_by_css_selector("[属性=‘属性值']")

find_element_by_css_selector("[属性=属性值]") ---------------- 请注意这里属性值没有加引号

实例1:find_element_by_css_selector("[name=‘kw']")

实例2.1:find_element_by_css_selector("[style=‘display']")

实例2.2:find_element_by_css_selector("[style=display]") ---------请注意这里属性值没有加引号

这里特意举例两次,是强调引号在这里加不加都没关系,不会影响定位。

4.通过父子关系定位:

假如你不知道某人的身份证号码、名字、手机号码等信息时无法取得联系,但是你知道某人爸爸的手机号码,此时你可以通过他爸爸来找到某人。也就是通过(“他爸爸[phone=手机号]>本人”) 找到某人。

换成术语就是当我们定位元素时,发现没有可以标识的唯一的元素的属性值时,那我们可以考虑用父亲标签结合属性来定位元素。例如:

find_element_by_css_selector(“input#id的属性值>下级标签”)

实例:find_element_by_css_selector(“input#kw>div”)

5.通过爷爷关系定位:

假如他爸爸也没有手机号码,此时你可以往上找他爷爷。也就是也就是通过(“他爷爷[phone=手机号]>他爸爸>本人”) ,找到某人。

换成术语就是当我们定位元素时,发现父亲标签中没有可以标识的唯一的元素的属性值时,那我们可以考虑用爷爷标签结合属性来定位元素。例如:

实例:find_element_by_css_selector(“input#kw>divs>div#ko”)

以上这篇python3 selenium自动化测试 强大的CSS定位方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python ip正则式
May 07 Python
python基于xml parse实现解析cdatasection数据
Sep 30 Python
Python实现提取谷歌音乐搜索结果的方法
Jul 10 Python
使用Python导出Excel图表以及导出为图片的方法
Nov 07 Python
使用python实现BLAST
Feb 12 Python
pygame实现俄罗斯方块游戏
Jun 26 Python
Django页面数据的缓存与使用的具体方法
Apr 23 Python
Python IDE Pycharm中的快捷键列表用法
Aug 08 Python
python实现计算器功能
Oct 31 Python
python list数据等间隔抽取并新建list存储的例子
Nov 27 Python
python序列化与数据持久化实例详解
Dec 20 Python
Python实现i人事自动打卡的示例代码
Jan 09 Python
python3 selenium自动化 下拉框定位的例子
Aug 23 #Python
python Web flask 视图内容和模板实现代码
Aug 23 #Python
Python 多线程搜索txt文件的内容,并写入搜到的内容(Lock)方法
Aug 23 #Python
Python 实用技巧之利用Shell通配符做字符串匹配
Aug 23 #Python
opencv 获取rtsp流媒体视频的实现方法
Aug 23 #Python
Python3从零开始搭建一个语音对话机器人的实现
Aug 23 #Python
python写入数据到csv或xlsx文件的3种方法
Aug 23 #Python
You might like
libmysql.dll与php.ini是否真的要拷贝到c:\windows目录下呢
2010/03/15 PHP
Windows服务器中PHP如何安装redis扩展
2019/09/27 PHP
PHP大文件及断点续传下载实现代码
2020/08/18 PHP
javascript实现 在光标处插入指定内容
2007/05/25 Javascript
js null undefined 空区别说明
2010/06/13 Javascript
javascript中检测变量的类型的代码
2010/12/28 Javascript
JavaScript将页面表格导出为Excel的具体实现
2013/12/27 Javascript
js中top的作用深入剖析
2014/03/04 Javascript
DOM 事件流详解
2015/01/20 Javascript
javascript控制台详解
2015/06/25 Javascript
jquery文字填写自动高度的实现方法
2016/11/07 Javascript
vue2.0实现分页组件的实例代码
2017/06/22 Javascript
javascript cookie的基本操作(添加和删除)
2017/07/24 Javascript
Angular @HostBinding()和@HostListener()用法
2018/03/05 Javascript
微信小程序中换行空格(多个空格)写法详解
2018/07/10 Javascript
微信小程序网络请求实现过程解析
2019/11/06 Javascript
Vue中登录验证成功后保存token,并每次请求携带并验证token操作
2020/09/08 Javascript
原生JS实现音乐播放器
2021/01/26 Javascript
[01:04:32]DOTA2-DPC中国联赛 正赛 Aster vs LBZS BO3 第二场 2月23日
2021/03/11 DOTA
Python中的rjust()方法使用详解
2015/05/19 Python
python实现对文件中图片生成带标签的txt文件方法
2018/04/27 Python
Python使用统计函数绘制简单图形实例代码
2019/05/15 Python
关于Python3 lambda函数的深入浅出
2019/11/27 Python
python FTP批量下载/删除/上传实例
2019/12/22 Python
Python属性和内建属性实例解析
2020/01/14 Python
Python单链表原理与实现方法详解
2020/02/22 Python
python Selenium 库的使用技巧
2020/10/16 Python
Django权限控制的使用
2021/01/07 Python
Html5 实现微信分享及自定义内容的流程
2019/08/20 HTML / CSS
FitFlop澳大利亚官网:英国符合人体工学的鞋类品牌
2017/06/05 全球购物
实习生的自我鉴定范文欣赏
2013/11/20 职场文书
群众路线自我剖析材料
2014/10/08 职场文书
师范生见习报告范文
2014/11/03 职场文书
党员“一帮一”活动总结
2015/05/07 职场文书
务工证明怎么写
2015/06/18 职场文书
Python连续赋值需要注意的一些问题
2021/06/03 Python