Selenium----Xpath的使用

Xpath
Xpath是XML的路径语言,就是通过元素的路径来查找标签元素

借助工具
可以借助火狐浏览器的Firebug和Firepath插件来练习

Xpath定位方法
固定格式://*[@属性名='']
1.xpath支持id,class,name定位
  通过id定位,如://*[@id='i1']
  通过class定位,如://*[@class='inner']
  通过name定位,如://*[@name='name']

2.xpath支持属性定位,当标签没有id,class,name三种属性时,就可以使用属性来定位
  @代表以什么属性来定位,后面可以接标签中的任意属性,如://[@value='beijing']

3.xpath支持标签定位,当标签属性重复时,就可以通过标签来过滤
  将*换成任意标签名,则可根据标签进行筛选,如://input[@placeholder='用户名']

4.xpath支持层级过滤
  xpath可以通过/来进行层级递进,找到符合层级关系的标签,如://form/div/input[@id='inner']
  当层级都重复时,可以通过单个层级的属性进行定位,如://form/div[@class='login_name']/input

5.xpath支持角标、索引定位,当一个元素的兄弟元素和它的标签一样,这是无法通过层级定位到,就可以使用角标来定位
  通过索引,在list中定位属性,与python的索引不一样,xpath索引从1开始,如://select[@name='city'][1]/option[1]

6.xpath支持逻辑运算定位:and或or
  通过and来缩小过滤的范围,只有条件都符合时才能定位到,如://select[@name='city' and @size='4']
  通过or来过滤,只要有一个符合就匹配到了,如://select[@name='city' or @size='4']

猜你喜欢

转载自www.cnblogs.com/yttbk/p/11027455.html