选取节点:

1、Nodename(选取此节点的所有子节点):

例:获取一个网页中所有的div元素

2、/(选取直接子节点,如果在最前面,代表从根节点开始选取,否则选择某节点下的某个节点):

所有的代码都是html标签中的子节点,根节点就是最外层的html,如果需要查找html中的body等节点,就是使用/html/body

3、//(查找所有子孙节点,在网页的任何地方进行查找):

查找head下所有的script标签,两种方法

查找网页下所有的script标签

4、@(选取拥有某个属性的节点):

选择页面下所有带有id属性的div元素

谓语:

谓语用来查找某个特定的节点或者包含某个特定值的节点,被嵌在方括号中

1、[number]:用于获取路径下第number个子元素

获取到整个页面下第一个div子元素

获取到整个页面下第二个div子元素

2、[last()]:用于获取路径下最后一个子元素

3、[position()]:获取路径下前n个子元素

获取整个页面下前4个子元素

4、[@]:选取拥有某个属性的节点

获取id的值为top_bannerC的div元素

通过contains可以进行模糊匹配,查找class属性包含policy-update值的div元素:

通配符:

1、*:查看所有元素

查看html下head中的所有元素

2、@*:把所有拥有属性的元素获取下来

获取拥有属性的所有div元素

选取多个路径:

1、|:

选取div元素中class属性分别是上图两个值的元素

运算符: