• 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("新闻")

  • 相关阅读:
    Logback的配置说明
    BAT批处理修改MSDOS窗口标题、大小、字体及背景颜色
    Java修饰符public,private,protected及默认的区别
    Class loading problem regarding ear's lib directory
    MySQL开发规范
    学习如何用自己的 appender 来扩展 log4j 框架
    指令重排、内存屏障概念解析
    高性能线程间队列 DISRUPTOR 简介
    Log4j2的性能为什么这么好?
    java多线程
  • 原文地址:https://www.cnblogs.com/blogzyq/p/11099330.html
Copyright © 2020-2023  润新知