zoukankan      html  css  js  c++  java
  • 3、操作元素:模拟键盘、鼠标事件

    一、简单操作
    1.点击(鼠标左键)页面按钮:click() 
    2.清空输入框:clear()
    3.输入字符串:send_keys()
    4.send_keys()如果是収送中文的,前面需加 u,如:u"中文",因为这里是输入windows 系统,windows 系统是 GBK 编码,我们的脚本是 utf-8,需要转码为 Unicode 国际编码,返样才能识别到
     
    5、submit()模拟提交操作
    二、模拟鼠标操作
    在 WebDriver 中, 将这些关于鼠标操作的方法封装在 ActionChains 类。ActionChains 类提供了鼠标操作的常用方法:

    首先要引入包
    from selenium.webdriver import ActionChains
    ActionChains方法列表:

    click(on_element=None) ——单击鼠标左键

    context_click(on_element=None) ——点击鼠标右键

    double_click(on_element=None) ——双击鼠标左键

    drag_and_drop(source, target) ——拖拽到某个元素然后松开

    move_to_element(to_element) ——鼠标移动到某个元素

    perform() ——执行ActionChains中的所有行为

    drag_and_drop_by_offset(source, xoffset, yoffset) ——拖拽到某个坐标然后松开

    key_down(value, element=None) ——按下某个键盘上的键

    key_up(value, element=None) ——松开某个键

    click_and_hold(on_element=None) ——点击鼠标左键,不松开

    move_by_offset(xoffset, yoffset) ——鼠标从当前位置移动到某个坐标

    move_to_element_with_offset(to_element, xoffset, yoffset) ——移动到距某个元素(左上角坐标)多少距离的位置

    release(on_element=None) ——在某个元素位置松开鼠标左键

    send_keys(*keys_to_send) ——发送某个键到当前焦点的元素

    send_keys_to_element(element, *keys_to_send) ——发送某个键到指定元素

    三、模拟键盘操作
     
    Keys类提供了几乎键盘上的所有按键的方法,我们可以用Keys来模拟键盘上的按键,或者组合键,如Ctrl + C、Ctrl + V等等
    1、首先要导入keys模块
    from selenium.webdriver.common.keys import Keys
    2.常见的键盘操作:

    send_keys(Keys.BACK_SPACE) #删除键(BackSpace)

    send_keys(Keys.SPACE) #空格键(Space)

    send_keys(Keys.TAB) #制表键(Tab)

    send_keys(Keys.ESCAPE) #回退键(Esc)

    send_keys(Keys.ENTER) #回车键(Enter)

    send_keys(Keys.CONTROL,‘a’) #全选(Ctrl+A)

    send_keys(Keys.CONTROL,‘c’) #复制(Ctrl+C)

    send_keys(Keys.CONTROL,‘x’) #剪切(Ctrl+X)

    send_keys(Keys.CONTROL,‘v’) #粘贴(Ctrl+V)

    send_keys(Keys.F1) #键盘 F1

    …… ......

    send_keys(Keys.F12) #键盘 F12

  • 相关阅读:
    利用Python来远程控制肉鸡自由操作,下一个黑客大佬就是你
    利用Python来远程控制肉鸡自由操作,下一个黑客大佬就是你
    职场效率及注意点,数据领域职业选择有哪些
    职场效率及注意点,数据领域职业选择有哪些
    大数据的挑战:数据质量和历史偏见
    IP地址格式转换(htonl、ntohl;inet_addr、inet_ntoa)
    ubuntu 查看软件安装目录以及安装版本
    C++11 POD类型
    C++11 static_assert
    localtime 和 localtime_r
  • 原文地址:https://www.cnblogs.com/yhms/p/11783578.html
Copyright © 2011-2022 走看看