zoukankan      html  css  js  c++  java
  • xpath 定位小技巧

    绝对路径定位

    find_element_by_xpath('/html/body/div[1]/*[2]/input')

    /表示从根节点开始,body中的第一个div标签下的第二个标签(*表示匹配所有类型标签)下的input标签。注意这个同级下第几个元素是从1开始的,同级下只有一个该标签就不用指定第几个了,比如上面的input

    利用元素属性进行定位

    find_element_by_xpath('//img[@alt="image"]')

    表示当前页面中某个alt属性值为image的img标签元素,注意//不表示从根目录开始查找了,直接查找img标签

    层级与属性结合

    ``find_element_by_xpath('//span[@id="test"]/input')`

    如果一个元素没有什么唯一标识,那么我们可以查找它的上一级元素,直到找到唯一标识。

    以上表示id值为test的span标签下的input标签元素

    使用逻辑运算符

    find_element_by_xpath('//div[@name="test" and @class="demo"]')

    如果一个属性不能唯一区分一个元素,那么可以使用and或者or

    以上表示name值为test同时class值为demo的div标签元素

    使用contains方法

    find_element_by_xpath('//span[contains(@*,"abc")]')

    contains方法用于匹配一个属性中包含的字符串。

    以上表示所有属性中包含abc的span元素,当然@属性可以指定为某一确定的属性,或者使用*匹配所有属性

  • 相关阅读:
    BestCoder Round #61 (div.2)
    CCPC L(水)
    CCPC A(模拟)
    暗网是什么?如何进入暗网?
    社会工程学:关于一些信息收集的网站
    Flask开发系列之Web表单
    Flask开发系列之模板
    [转]Python 资源大全中文版
    python字符串/列表/字典互相转换
    Flask开发系列之Flask+redis实现IP代理池
  • 原文地址:https://www.cnblogs.com/milesma/p/12330917.html
Copyright © 2011-2022 走看看