Selenium之ActionChains类、Keys类

ActionChains类(鼠标操作)常用于模拟鼠标的行为,比如单击、双击、拖拽等行为。

一些常用的模拟鼠标的操作方法有:

       click(on_element=None)     --- 鼠标单击

       double_click(on_element=None)    ---  双击       

       context_click(on_element=None)   ---  右击       

       click_and_hold(on_element=None)   ---  鼠标单击并且按住不放

       drag_and_drop(source,target)   ---  拖拽

       drag_and_drop_by_offset(source,xoffset,yoffset)   ---  将目标拖动到指定的位置

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

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

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

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

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

       perform()    ---  执行链中的所有动作

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

下面看一些例子:

       单击、双击、右击  -----  实例 

       拖拽 ------ 实例

       按键  ---  实例   这里是用ActionChains类提供的几个模拟按键的方法

       鼠标移动  -----  实例

-----------------------------------------------------------------------------------------------------------------------------------------

Keys类(键盘操作):

       selenium提供了一整套的模拟键盘操作事件,需要先导入键盘模块  from selenium.webdriver.common.keys import Keys

       * 模拟按键有多种方法,能用win32api来实现,能用SendKeys来实现,也可以用selenium的WebElement对象的send_keys方法来实现。

       * 模拟ENTER键,可以用send_keys(Keys.ENTER)

       * CONTROL可以和其他键组合,实现复制、粘贴、剪切等功能

       * SPACE可用来选中check box或者radio button

常用的键盘操作方法有:

       ① send_keys(Keys.CONTROL,'c')     复制

       ② send_keys(Keys.CONTROL,'v')     粘贴

       ③ send_keys(Keys.CONTROL,'a')     全选

       ④ send_keys(Keys.CONTROL,'x')     剪切

       ⑤ send_keys(Keys.F1')         键盘F1到F12

如下为简单例子实现:

原文地址:https://www.cnblogs.com/peipei-Study/p/11975794.html