Python selenium ActionChains 基本操作

ActionChains类继承自object类,但是需要为其传入一个driver对象,即ActionChains(driver)

此类常用于模拟鼠标键盘操作,其API列表如下:

perform()   此方法执行储存的所有动作

单击

 click(self, on_element=None),此方法即为鼠标单击动作,输入参数为一个元素,可以不输入

  用法:ActionChains(driver).click(driver.find_element_by_id("input")

单击并保持

 click_and_hold(self, on_element=None),此方法点击一个元素并保持,参数为一个元素

右击

 context_click(self, on_element=None),此方法为右击一个元素,参数为一个元素

双击

 double_click(self, on_element=None),此方法为双击一个元素,参数为一个元素

拖放(将一个元素拖至另外一个元素)

 drag_and_drop(self, source, target),此方法将source元素拖放至target元素处,参数为两个元素

拖放(将一个元素拖放至另外一个位置)

 drag_and_drop_by_offset(self, source, xoffset, yoffset),此方法将一个source元素拖放至xoffset, yoffset处,参数为一个元素,两个数值距离(需为整形)

按下某个按键

 key_down(self, value, element=None),此方法为按下某个按键如ctrl,shift,alt,参数为一个按键和一个元素(可为空)

 如模拟ctrl+c:ActionsChains(driver).key_down(Keys.CONTROL).send_keys('c').key_up(Keys.CONTROL).perform()

松开一个按键

 key_up(self, value, element=None),此方法为松开某个按键如ctrl,shift,alt,参数为一个按键和一个元素(可为空),需要和key_down配合使用

移动鼠标一段横纵距离

 move_by_offset(self, xoffset, yoffset),此方法为移动鼠标至指定的坐标,参数为两个数值(需为整形)

移动至某个元素

 move_to_element(self, to_element),此方法为移动鼠标至一个指定的元素,参数为一个元素

    dri=driver.find_element_by_id(register_dir['id_username'])
              ActionChains(driver).move_to_element(dri).click()

移动至某个元素,使用距离

 move_to_element_with_offset(self, to_element, xoffset, yoffset)此方法为移动鼠标至一个指定的元素,参数为一个元素,和两个整形数字

松开鼠标

 release(self, on_element=None),此方法为松开鼠标,和拖放等一起使用

键盘输入

 send_keys(self, *keys_to_send),此方法为向一个元素输入一个字符串,需先找到该元素

 send_keys_to_element(self, element, *keys_to_send),此方法为向一个元素输入一个字符串,参数为一个元素和一个字符串

posted @ 2017-12-22 19:55  lvusyy  阅读(843)  评论(0编辑  收藏  举报