zoukankan      html  css  js  c++  java
  • selenium+python自动化笔记之一

    一、webdriver的API与定位元素

    元素定位核心部分
    元素名称 webdriver API 说明
    id find_element_by_id() id定位
    name find_element_by_name() name定位
    class name find_element_by_class_name() class_name定位
    tag name find_element_by_tag_name()  
    link text find_element_by_link_text() 精准定位
    partial link text find_element_by_partial_link_text() 模糊定位
    xpath find_element_by_xpath() xpath定位
    css selector find_element_by_css_selector() css定位
    元素操作方法
    方法 说明
    clear 清除元素内容
    send_keys 模拟按键输入
    click 点击
    submit 提交表单

    二、使用xpath定位元素

        1:XML路径语言:用来确定XML文档中某部分位置的语言;

         2:XPath用于在XML文档中通过元素和属性进行导航

         3:XPath是一个W3C标准

         4:对xml/html有一定的了解

    表达式 结果
    /xxx 选取根节点xxx
    /xxx/yyy 根据绝对路径选择元素
    //xxx 整个文档扫描,找到所有xxx元素
    //xxx/yyy 所有父元素为xxx的yyy元素
    . 选取当前节点的父元素节点
    .. 选取父元素地址
    //xxx[@id] 选取所有xxx元素中有id属性的元素
    //xxx[@id=yyy] 选取所有xxx元素id属性为yyy的元素
    表达式 结果
    //*[count(xxx)=2] 统计xxx元素个数=2的节点
    //*[local-name()='xxx'] 找到tag为xxx的元素
    //*[starts-with(local-name(),'x')] 找到所有tag以x开头的元素
    //*[contains(local-name(),'x')] 找到所有tag包含x的元素
    //*[string-length(local-name())=3] 找到所有tag长度为3的元素
    //xxx|//yyy 多个路径查找

    三、鼠标和键盘事件

           ActionChains类与输入事件

          1:from selenium.webdriver.common.action_chains import ActionChains

          2:ActionChains(driver):用于生成模拟用户行为

          3:perform():执行存储行为

    鼠标事件
    表达式 说明
    context_click 右击事件
    double_click 双击事件
    drag_and_drop 拖动
    move_to_element() 鼠标停留在一个元素上
    click_and_hold 按下鼠标左键在一个元素上
    键盘事件:send_keys()
    from selenium.webdriver.common.keys import Keys
    表达式 说明
    send_kyes(Kyes.BACK_SPACE) 退格键
    send_kyes(Kyes.CONTRL.'a') 全选
    send_kyes(Kyes.CONTRL.'v') 粘贴
    send_kyes(Kyes.CONTRL.'c') 复制
    send_kyes(Kyes.CONTRL.'x') 剪切
    send_kyes(Kyes.ENTER) 回车
  • 相关阅读:
    FT View SE联合Studio 5000仿真
    安装AB编程软件提示安装失败时如何处理
    如何识别Studio 5000程序开发版本号
    Studio 5000编程:一种累计时间的编程方法
    CPU或以太网模块重启DHCP请求
    Studio 5000编程:如何判断AB PLC系统中的硬件设备是否在正常工作
    使用以太网通信方式刷新AB PLC固件
    初探Node-red结合阿里云数据库,定时显示数据
    SQL SERVER 按时间计算每天某值的平均值
    微信小程序对接显示阿里云数据库数据
  • 原文地址:https://www.cnblogs.com/LancyWu/p/8342902.html
Copyright © 2011-2022 走看看