绝对路径的方法和通过firepath里面定位的方法,这两种都是新手常用的,这里今天不讲着两种
1.通过元素属性定位
//tag[@attr=attr] 以下所有的例子都通过百度首页来演示给大家。定位百度搜索框,//input[@type='text'],//input[@class='s_ipt']。//input[@attr=attr]只要是input里面的的属性都可以用来定位,当然还要看看是不是唯一的
2.使用逻辑运算符 还是定位百度搜索框为例
//tag[@attr1=attr1 and @attr2=attr2] 这个是逻辑与(and),逻辑或(or)s是也同样的
3.通过文本定位
3.1text()
//tag[text()=xx],这里用百度首页里面的"hao123"链接举例子
//a[text()='hao123']
3.2 contains() 包含定位
//tag[contains(text(),xx)] ,//tag[contains(@attr,xx)],前面一个是文本,后面一个是包含属性前面都讲了直接@属性定位,这里就不讲了
//a[contains(text(),'hao')] 这里同样是定位"hao123"这个链接,当然你也可以写全
4.position()=n位置定位
//tag[@attr=attr][position()=n] 这里还是定位"hao123" 。//a[@class='mnav'][position()=2] n表示第几个元素,n从1开始
5.last()-n
n=0或者不写last()默认倒数第一个,n=1倒数第二,以此类推
6.following-sibling 选取当前节点之后的所有同级节点
这里定位"hao123"这个a标签的父级元素(div)的同级的第一个div
7.preceding-sibling 选取当前节点之前的所有同级节点
7和6相反的,6是同级往下走,7是同级往上走的
6和7定位不怎么用,但是在selenium定位元素的时候还用到过,大家了解知道有这么个东西就好了