Action Chains类经常使用于模拟鼠标的行为,好比单击,双击,拖拽等行为,使用下面的方法导入Action Chains类php
from selenium.webdriver.common.action_chains import ActionChains
下面先来看一个例子:css
import time from selenium import webdriver from selenium.webdriver import ActionChains browser =webdriver.Firefox() browser.get('http://www.runoob.com/try/try.php?filename=jqueryui-api-droppable') browser.switch_to.frame('iframeResult') # id = 'iframeResult' source = browser.find_element_by_css_selector('#draggable') # 被拖拽的对象 target = browser.find_element_by_css_selector('#droppable') # 目标对象 actions = ActionChains(browser) actions.drag_and_drop(source, target) actions.perform() time.sleep(3) browser.close()
以上的例子中,实现了鼠标的拖拽操做,首先须要实例化,而后调用其中的方法,完成相应的操做。jquery
下面是一些经常使用的模拟鼠标的操做web
key_down(value, element=None)
按住某个键,使用这个方法能够方便的实现某些快捷键,好比下面按下Ctrl+c键api
ActionsChains(browser).key_down(Keys.CONTROL).send_keys('c').perform()
key_up(value, element=None)
松开某个键,能够配合上面的方法实现按下Ctrl+c而且释放。ui
ActionsChains(browser).key_down(Keys.CONTROL).send_keys('c').key_up(Keys.CONTROL).perform()
send_keys_to_element(element, *keys_to_send)
向指定的元素输入数据code