zoukankan      html  css  js  c++  java
  • selenium元素定位

    find_element_by_id

    html中id=‘xxxx’,页面中id是唯一的

    find_element_by_name

    html中name=’xxxx’

    可以有多个,如果出现多个,使用find_elements

    find_element_by_xpath

    通过xpath信息

    使用xpath定位起始

    //开始表示从html顶部开始

                  ./表示从当前位置开始往后查找

    通过元素属性定位

             可以通过元素的id,class,name,type等全部属性定位

             Driver.find_element_by_xpath(“//div[@属性名=‘value’]”)

             其中div标签可以具体的写明,也可以使用*代替

    Xpath的层次

             按照dom树的先后写出xpath的层次,可以通过索引来定位具体的一个元素

             Driver.find_element_by_xpath(“//*[@id=’aa’]/option[1]”)表示获取第二个元素

    Xpath的逻辑运算

             在使用属性的时候可以使用逻辑运算具体定位元素,支持与(and),或(or),非(not)

             Driver.find_element_by_xpath(“//*[@class=’aa’ and @type=‘input’]”)

    Xpath的模糊匹配

             Xpath可以通过对属性进行模糊匹配进行定位

             使用关键字contains模糊匹配

             Driver.find_elements_by_xpath(“//*[contains(text(),’hao’)]”)

             该语句表示查找所有包含text为hao的元素

             使用starts-with匹配以什么开头

             Driver.find_element_by_xpath(“//*[starts-with(@id,’kw’)]”)

             表示查找id以kw开始的元素

             使用ends-with匹配以什么结束

             Driver.find_element_by_xpath(“//*[ends-with(@class,’kw’)]”)

             表示查找class以kw结束的元素

             使用matchs关键字匹配正则表达式

             Driver.find_element_by_xpath(“//*[matchs(@class,’kw’)]”)

             表示查找匹配整个表达式的元素

    find_element_by_link_text

    linktext信息

    find_element_by_partial_link_text

    partial为部分的意思,需要选择一个比较唯一的字段来区分这个元素

    find_element_by_tag_name

    通过tag的名称查找

    find_element_by_class_name

    通过class名称查找

    find_element_by_css_selector

    通过css选择器查找

     

  • 相关阅读:
    独立博客,从零到千万访问,这三年我都做了什么
    Postman使用详解
    Postman安装与使用
    Python爬虫入门教程:超级简单的Python爬虫教程
    《完全用Linux工作》——转载自清华退学博士
    转:一篇搞定Python正则表达式
    文件上传的单元测试怎么写?
    功能性测试分类
    ajax 学习笔记 timer控件
    ajax 学习笔记 updatepannel控件
  • 原文地址:https://www.cnblogs.com/hellowcf/p/7576224.html
Copyright © 2011-2022 走看看