• selenium--定位元素


      Selenium提供了以下方法来定位元素:

    • find_element_by_id
    • find_element_by_name
    • find_element_by_xpath
    • find_element_by_link_text
    • find_element_by_partial_link_text
    • find_element_by_tag_name
    • find_element_by_class_name
    • find_element_by_css_selector

      定位多个元素时,使用以下方法(这些方法将会返回一个列表值):

    • find_elements_by_name
    • find_elements_by_xpath
    • find_elements_by_link_text
    • find_elements_by_partial_link_text
    • find_elements_by_tag_name
    • find_elements_by_class_name
    • find_elements_by_css_selector

    举个简单的例子:

    from selenium.webdriver.common.by import By
    
    driver.find_element(By.XPATH,'//button[text()="Some text"]')
    driver.find_elements(By.XPATH,'//button')  

      打开浏览器,进入要测试的界面(这里用百度一下首页举例),按F12,选择“element”tab,就可以看到当前页面的元素信息。

    下面按不同的方法举具体的例子:

    1、id

      

                                                                                                                     图1

    如图1,输入框的ID是“kw”,可如下定位:

    inputfield = driver.find_element_by_id("kw")
    

     2、name

    如图1,输入框的name是“wd”,可如下定位:

    inputfield = driver.find_element_by_name("wd")
    

     3、xpath

                                           图2

    如定位第二个input,可如下定位:

    inputfield = driver.find_element_by_xpath("//form[@id='form']/input[2]")
    或
    inputfield = driver.find_element_by_xpath("//input[@type='hidden'][@name='f']")
    

     4、link_text

                                                                                                                                                             图3

      如图3,定位“视频”,可如下定位:

    vediolink = driver.find_element_by_link_text(u'视频')
    

      5、tag name

                            图4

    如图4,“welcome”文字可如下定位:

    welcometag = driver.find_element_by_tag_name("h1")
    

     6、class name

    如图1,输入框可如下定位:

    inputfield = driver.find_element_by_class_name("s_ipt")
    

     7、css selector

    如上, ‘p’元素可按如下定位:

    pelement = driver.find_element_by_css_selector("p.content")
    

      

    参考资料:

    selenium-python 官网:http://selenium-python.readthedocs.io/locating-elements.html

  • 相关阅读:
    上网助手(集成ipv6)windows版
    c# 串口编程
    test blog
    用于主题检测的临时日志(d020b283408c4bc68872f97ee237b663 3bfe001a32de4114a6b44005b770f6d7)
    OpenGL概述 陌陌
    [转载][转帖]谈谈我对攻读计算机研究生的看法。。。大牛的文章,见解精深独到
    滚动值的兼容问题
    js小练习去掉指定的字符组成一句话输出
    马虎将classname加到了id属性中,造成报错
    锋利的jquery读书笔记(一)
  • 原文地址:https://www.cnblogs.com/susan-su/p/7475236.html
Copyright © 2020-2023  润新知