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

    元素定位一共有八种方法:

    1. id定位

    find_element_by_id()

    页面元素里有一个且唯一的id="login",如下面:

     
     

    可以定位到【登录】按钮的方法有

    ①、driver.find_element_by_id(‘login’)

    ②、driver.find_element_by_css_selector(‘#login’)

    ③、driver.find_element_byxpath("//*[@id='login']")

    2. name定位

    find_element_by_name()

    如下图:

     
     

    driver.find_element_name('button')

    3. class_name 

    class标准属性,不唯一,通常找一类元素

    <div class='cheese'><span>Cheddar</span></div>

     
     

    4. tag_name 

    tag名如果是唯一的,可以根据tag定位

    如果html有如下:

    <iframe src='...'></iframe>

    ele=driver.find_element_by_tag_name('iframe')

    eles=driver.find_elements_by_tag_name('iframe')

    如下图,可以通过iframe定位到输入框

     
     

     

    5.通过链接文本选择元素

    对于链接,可以通过链接其链接文本的内容

    比如百度的新闻链接

     
     

    6.partial_link

    甚至通过部分链接文本选择元素

    ele=driver.find_element_partial_link_text('123')

     
     

    7.xpath定位

    find_element_by_xpath()

    通过//div//p可以查找任意div节点下面的p节点,无论p节点是否是直属节点

    eles = food.find_elements_by_xpath('//div//p')

     
     

    8.CSS定位

    find_element_by_css_selector(‘div > *’)

     
  • 相关阅读:
    indexDB
    跨域 iframe和父页面的通信
    目标
    向往,热情,态度
    dns-prefetch/prefetch/preload/defer/async
    exports 和module.exports转
    【vue】--利用vue-cli--搭建项目------1912--(另一个种)
    【原生】 微任务和宏任务
    【vue】--路由解耦 传值的方式
    【vue】 vue中的query 路由传值的方式
  • 原文地址:https://www.cnblogs.com/testwjr/p/14636285.html
Copyright © 2011-2022 走看看