Xpath 和Css Selector使用
Xpath是xml的路径语言,就是通过元素的路径来查找标签元素。
Xpath直接在火狐浏览器的firebug中练习,49版本一下的火狐才能用firebug插件。
Xpath的使用方法
注://* 代表页面下的所有元素 *代表所有的可以被其他的标签代替 @后面是属性定位
1、Xpath 支持ID/Class/Name 定位功能
通过ID定位
//*[@id='inner'] 查找id =inner的标签
通过Class定位
//*[@class='class1'] 查找class=class1的标签
通过Name定位
//*[@type='text']
2、如果标签没有id/class/Name 三种属性,Xpath孩子吃属性定位功能
//*[@value='用户名'] @后面可以跟任何属性
3、当标签属性重复时,Xpath提供了通过标签进行过滤
可以将*换成任意标签名,则可根据标签进行过滤
//input[@palceholder='用户名']
4、当标签页重复时,Xpath提供了层级过滤
跟dom一样找不到child就找兄弟,再不行找爸爸
//div/input[@placeholder='用户名']
当层级都重复时,可以单个层级结合属性定位
//form/div[@class='login-passwd']/input
5、一个元素他的兄弟元素跟他的标签一样,这时候无法通过层级直接定位,但是可以结合下标筛选;
不过Xpath是从1开始的
//form/div[@class='login-passwd']/input[1]
6、Xpath还提供了 and和or 逻辑元算定位
//通过and来缩小过滤的范围,只有条件都符合时才能定位到
Css Selector使用方法
//xpath运行效率最慢,代码冗余最高的
//Cssselector 推荐(w3cshool byid byname全部转成css运行
//都是Css selector运行)
Css Selector 定位实际就是HTML的Css选择器的标签定位
css Selector 在火狐浏览器,下载firefinder结合firebug使用
使用方法:
1、Css Selector 支持ID/Class定位与 html中css的定位方法一样
#id 代表id定位
.后面跟class名字带白哦class定位还提供了多个class同时定位
.c1.c2.c3
2、css Selector 支持标签和属叠加定位
input[value='用户名']
还可以标签叠加 id和class使用
input.c1 叠加class
input#i1 叠加id
3、Css Selector支持杜仲属性组合
Css Selector 的多属性组合选择过滤 没有and 只需要多个[] 连接 就可以
Xpath 和Css Selector使用的更多相关文章
- selenium中Xpath和CSS Selector的使用方法
一.selenium中Xpath的使用方法 1. 什么是xpath? Xpath是XML的路径语言,通俗一点讲就是通过元素的路径来查找这个标签元素 2. 练习Xpath的工具 火狐浏览器,下载插件Fi ...
- selenium:css_selector定位详解(css selector和xpath的比较)
selenium使用css selector和xpath的比较 selenium提供的定位方式(常用) ID NAME CLASS CSS SELECTOR XPATH 推荐的定位方式的优先级 优 ...
- Web自动化测试:xpath & CSS Selector定位
Xpath 和 CSS Selector简介 CSS Selector CSS Selector和Xpath都可以用来表示XML文档中的位置.CSS (Cascading Style Sheets)是 ...
- Scrapy学习系列(一):网页元素查询CSS Selector和XPath Selector
这篇文章主要介绍创建一个简单的spider,顺便介绍一下对网页元素的选取方式(css selector, xpath selector). 第一步:创建spider工程 打开命令行运行以下命令: sc ...
- css selector: xpath:
css selector: $$(".mainLeft>div>h1") xpath: $x(".mainLeft>div>h1") n ...
- Selenium - CSS Selector
Selenium - CSS Selector http://www.cnblogs.com/bugua/archive/2012/08/16/2641647.html 昨天我练习了用CSS(即层 ...
- css selector
文章一: http://www.jb51.net/css/68287.html 去年我学jQuery的时候,曾经做过一点选择器(selector)的笔记,今天是CSS的选择器,以后还有一部分xPath ...
- Selenium 使用css selector (资源来源于网络)
Selenium - CSS Selector 昨天我练习了用CSS(即层叠样式表Cascading Stylesheet) Selector来定位(locate)页面上的元素(Elements).S ...
- UI自动化(九)Css Selector
什么是Css Selector? Css Selector定位实际就是HTML的Css选择器的标签定位 工具 Css Selector的练习建议大家安装火狐浏览器后,下载插件,FireFinder 或 ...
随机推荐
- 如何删掉git版本库master分支的第一个commit
这个操作会将库清空,一般来说在建库开始的时候操作. 适用场景: git init初始化版本库之后,提交第一个点之后发现这个点出问题了,但是此时内心如果有洁癖的话, 你会觉得不完美,很想把这个点干掉重来 ...
- centos7搭建activemq服务
一.下载安装jdk 下载 jdk-8u211-linux-x64.rpm安装: yum -y install jdk-8u211-linux-x64.rpm 二.官网下载 activemq 软件包 官 ...
- 个人总结的J2EE目前知道的涵盖面,从大方向入手,多写单元测试,加强基础
JEE Development process: java SE 普通语法,,异常处理,数据结构,循环,面向对象,泛型, 属性,反射,多线程,线程池,锁, lambada,异步编程,并发 框架spri ...
- Oracle批量导出表数据到CSV文件
需求:把oracle数据库中符合条件的n多表,导出成csv文本文件,并以表名.csv为文件名存放. 实现:通过存储过程中utl_file函数来实现.导出的csv文件放入提前创建好的directory中 ...
- CSS 多行省略失效 (-webkit-box-orient 失效) Second Autoprefixer control comment was ignored. Autoprefixer applies control comment to whole block, not to next rules.
webpck不能编译这个属性-webkit-box-orient: vertical https://github.com/fanyifanbumaimeng/Articles/issues/48 / ...
- python插入mysql数据(2)
python插入mysql数据(2) """插入操作""" import pymysql import datetime from pymy ...
- 2019春Python程序设计练习6(0423--0429)
1-1 定义Python函数时,如果函数中没有return语句,则默认返回空值None. (2分) T F 1-2 在函数内部没有任何声明的情况下直接为某个变量赋值,这个变量一定是函数 ...
- POJ 1995(有关快速幂运算的一道水题)
Raising Modulo Numbers Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 9745 Accepted: ...
- TTTTTTTTTTTTTTTTT CF #182 div1 B floyd
题意: 有 n(3≤n≤100) 个站点,当第一次到达站点 u 的时候会增加寿命 au(1≤au≤103),题目给了 n 个站点的二位空间坐标,每两个站点之间的距离为曼哈顿距离(dis(i, j)=| ...
- Python3学习笔记(十三):装饰器
装饰器就是一个闭包,它的主要作用是在不改变原函数的基础上对原函数功能进行扩展. 我们先来写一个简单的函数: from time import sleep def foo(): print(" ...