zoukankan      html  css  js  c++  java
  • selenium xpath高级语法

    # xpath 使用路径表达式来匹配xml文档或html文档中的节点或节点集,
    # 这个路径表达式,和我们常见的文件夹路径有点像
    # xpath 的标准语法 //tagname[@属性='']  # @后边可以跟任意属性,只要这个元素有就可以
    # //a[@href='/checkwork/manage']/i[@class='fa fa-tasks']
    # 上述表达式理解为:
    #   具备class属性且class属性值为fa fa-tasks
    #   并且父元素是a标签,且父元素具有 href 属性,并且父元素的href属性值为/checkwork/manage
    
    
    """
    xpath中的单斜杠和双斜杠
    / 通常用在绝对路径,也表示父子关系
    // 通常用作相对路径,可以从文档的任意位置开始作为起点,也表示后代关系
    """
    
    # xpath的属性定位表达式
    # //p[@id]  匹配所有具备id属性的p标签
    # //p[@id='abc']  匹配所有id属性值为abc的p标签
    # //p[@id='abc' and @name='xyz']  xpath 允许我们使用and或or连接多个属性
    # //*[@class='yu']  可以用星号代替tagname,代表通配符,这个表达式匹配所有class属性值为yu的元素,不论元素标签是什么
    
    
    # xpath 允许我们使用文本进行定位(css不支持
    # //*[text()='打 印']  使用的文本就是标签对之间的内容
    
    # 轴定位
    # //*[text()='打 印']/ancestor::span
    # ancestor 选取当前节点的所有先辈元素,并且要指定先辈元素的类型
    
    # //*[text()='打 印']/ancestor-or-self::div
    # 选取当前节点所有的先辈元素,或者当前节点本身
    
    # //*[text()='打 印']/preceding-sibling::span
    # preceding-sibling 选取当前节点之前的所有同级节点
    
    # //*[text()='打 印']/descendant::p
    # descendant 选取当前节点的所有后代元素
    
    # //*[text()='打 印']/descendant-or-self::span
    # descendant-or-self 选取当前节点的所有后代元素,或者当前节点本身
    
    
    # 在 xpath中,.代表当前路径,.. 代表上层路径
    世界上最美的风景,是自己努力的模样
  • 相关阅读:
    Checked Exception & Unchecked Exception
    Spring事务:调用同一个类中的方法
    SpringMVC接收checkbox传值
    Java String 学习
    写给大忙人的JavaSE 8
    Spring in Action 4th 学习笔记 之 AOP
    Spring in Action 4th 学习笔记
    spring只是一个框架
    lambda小结
    电感的Q值
  • 原文地址:https://www.cnblogs.com/xiong-hua/p/14939229.html
Copyright © 2011-2022 走看看