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的类实例属性访问规则探讨
Jan 30 Python
解决python matplotlib imshow无法显示的问题
May 24 Python
Python unittest 简单实现参数化的方法
Nov 30 Python
Python 2/3下处理cjk编码的zip文件的方法
Apr 26 Python
使用Python的OpenCV模块识别滑动验证码的缺口(推荐)
May 10 Python
python基于FTP实现文件传输相关功能代码实例
Sep 28 Python
详解Python list和numpy array的存储和读取方法
Nov 06 Python
布隆过滤器的概述及Python实现方法
Dec 08 Python
Python如何省略括号方法详解
Mar 21 Python
解决python多线程报错:AttributeError: Can't pickle local object问题
Apr 08 Python
增大python字体的方法步骤
Jul 05 Python
pytest fixtures装饰器的使用和如何控制用例的执行顺序
Jan 28 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
PHPMYADMIN导入数据最大为2M的解决方法
2012/04/23 PHP
php实现获取及设置用户访问页面语言类
2014/09/24 PHP
JavaScript XML操作 封装类
2009/07/01 Javascript
JavaScript 乱码问题
2009/08/06 Javascript
ExtJs的Date格式字符代码
2010/12/30 Javascript
jquery清空textarea等输入框实现代码
2013/04/22 Javascript
用js来获取上传的文件名纯粹是为了美化而用
2013/10/23 Javascript
jQuery控制frames及frame页面JS的方法
2016/03/08 Javascript
JavaScript解析任意形式的json树型结构展示
2017/07/23 Javascript
arcgis for js栅格图层叠加(Raster Layer)问题
2017/11/22 Javascript
深入理解node.js http模块
2018/01/24 Javascript
javascript原生封装一个淡入淡出效果的函数测试实例代码
2018/03/19 Javascript
vue自定义全局共用函数详解
2018/09/18 Javascript
利用JS动态生成隔行换色HTML表格的两种方法
2018/10/09 Javascript
压缩Vue.js打包后的体积方法总结(Vue.js打包后体积过大问题)
2020/02/03 Javascript
Vue性能优化的方法
2020/07/30 Javascript
简单谈谈Python流程控制语句
2016/12/04 Python
python 线程的暂停, 恢复, 退出详解及实例
2016/12/06 Python
Pycharm学习教程(1) 定制外观
2017/05/02 Python
python通过tcp发送xml报文的方法
2018/12/28 Python
Python Pandas实现数据分组求平均值并填充nan的示例
2019/07/04 Python
Django上使用数据可视化利器Bokeh解析
2019/07/31 Python
Python PyInstaller安装和使用教程详解
2020/01/08 Python
Python之关于类变量的两种赋值区别详解
2020/03/12 Python
将不规则的Python多维数组拉平到一维的方法实现
2021/01/11 Python
解决Pycharm 运行后没有输出的问题
2021/02/05 Python
英国书籍、CD、DVD和游戏的第一道德零售商:Awesome Books
2020/02/22 全球购物
Bonprix法国:时尚、鞋子、家居
2020/12/29 全球购物
黄继光的英雄事迹材料
2014/02/13 职场文书
中学教师教育感言
2014/02/21 职场文书
入党自荐书范文
2014/03/09 职场文书
运动会100米加油稿
2015/07/21 职场文书
学校团代会开幕词
2016/03/04 职场文书
JavaScript实现显示和隐藏图片
2021/04/29 Javascript
Vue-Element-Admin集成自己的接口实现登录跳转
2021/06/23 Vue.js
Redis官方可视化工具RedisInsight安装使用教程
2022/04/19 Redis