Selenium----Xpath的使用

Posted yttbk

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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‘]

 

以上是关于Selenium----Xpath的使用的主要内容,如果未能解决你的问题,请参考以下文章

Selenium - Xpath 使用方法

java selenium XPath 定位

如何使用 Selenium xpath 查找包含“下载”一词的所有元素?

selenium+xpath 文本信息定位

Selenium----Xpath定位

Selenium xpath all (//*) 不会占用所有 css 元素