zoukankan      html  css  js  c++  java
  • python selenium常用操作 查找元素

    1,get(url)

    在当前浏览器会话中访问传入的url地址

    2,close()

    关闭浏览器当前页面

    3,quit()

    退出webdriver并关闭所有窗口(推荐)

    4,refresh()

    刷新当前页面

    ------------------注意,下面没有括号—————————

    5,title

    获取当前页面的标题

    6,page_source

    获取当前页面渲染之后的源代码

    7,current_urt

    获取当前页面的url

    8,window_handles

    获取当前会话所有窗口的句柄

    ====================查找元素===============================

    进行web页面自动化测试,对页面上的元素进行定位和操作是核心,而操作又是以定位为前提,因此,对页面元素的定位是进行自动化测试的基础。

    页面上的元素,有各种属性,比如元素名字,元素id……,webdriver就是利用元素的这些属性来进行定位的。

    可以用于定位的常用的元素属性:

    id,name,class name,tag name,link text,partial link text,xpath,css selector

    对应于webdriver中的定位方法分别是:

    driver.find_element_by_name()——常用

    driver.find_element_by_id()——常用

    driver.find_element_by_class_name()——常用

    driver.find_element_by_tag_name()——最不靠谱

    driver.find_element_by_link_text()——定位链接文字好用

    driver.find_element_by_partial_link_text()——定位链接文字好用

    driver.find_element_by_xpath()——灵活

    driver.find_element_by_css_selector()——灵活

    以上是定位一个元素的方法,相应的也有定位一组元素的方法:

    driver.find_elements_*同上,就是element多加了个s

    如何查看元素的属性呢?

    若你使用的是chrome浏览器,按下键盘的F12,即可打开开发者工具,从中得到结果。

    这么多属性可以用来定位,那么我们选择哪种呢?其实,定位元素的方法没有好坏之分,不同场景有不同的适用方法。

    比如定位百度首页文本框的方法,我们可以用

    id来定位:        driver.find_element_by_id('kw')

    XPath 来定位:driver.find_element_by_xpath("//input[@id='kw']")

    CSS来定位:   driver.find_element_by_css_selector('#kw')

    比如,定位百度首页右上角的“新闻”:

    find_element_by_link_text("新闻")

  • 相关阅读:
    数据表分区, 全新分区
    SSIS基础设计最佳实践
    数据表分区, 普通表转分区表
    关于游标[二]
    弹窗代码汇集
    关于分页显示中的换行显示原理代码
    C# 装箱和拆箱[整理]
    insert into tablename select * from tablename与Select * into tablename from tablename 比较[转]
    SQL Server应用程序中的高级SQL注入
    CHARINDEX使用【转】
  • 原文地址:https://www.cnblogs.com/blogzyq/p/11099330.html
Copyright © 2011-2022 走看看