# xpath定位表达式
绝对定位:从根路径,一级一级往下找
相对定位:
# 语法:
1、/ :代表根节点,查找元素只能一级一级往下走
2、// :查找子孙元素,不用考虑元素的曾经
3、. :代表当前已经选中的节点
4、.. :代表当前节点 的父节点
5、* :通配符(表示匹配所有的元素)
# 谓语(条件):通过中括号来表示
1、下标取值:
xpath的索引是从1开始的
注意点:xpathd的下标使用有坑,使用索引的时候,前后的部分使用括号括起来(索引的优先级高于//)
例子:(//input)[1]
2、通过属性筛选:
[@属性名=属性值]
例子://input[@id='kw']
3、通过元素的文本进行定位:
[text()="文本值"]
例子://a[text(),'新闻']
4、部分匹配:
starts-with:匹配是否以xx开头的
匹配文本://a[starts-with(text(),"hao")]
匹配属性://a[starts-with(@href,"http://news")]
contains:包含匹配
匹配文本://a[contains(text(),"hao")]
匹配属性://a[contains(@href,"http://news")]
# 逻辑运算符
and:通过多个条件进行筛选[条件1and条件2]
例子://input[@type='hidden'and@name='rsv_spt']
or:符合多个条件中的一个即可