SeleniumのAction Chainsクラス
2059 ワード
ActionChainsクラスはマウスの動作をシミュレートするためによく使用されます.たとえば、クリック、ダブルクリック、ドラッグなどの動作をシミュレートし、次の方法でActionChainsクラスをインポートします.
次に例を示します.
以上の例では,マウスのドラッグ操作を実現し,まずインスタンス化し,その中のメソッドを呼び出し,対応する操作を完了する必要がある.
次に、一般的なマウスのシミュレーション操作を示します. click(on_element=None)マウス をクリック click_and_hold(on_element=None)マウスをクリックし、 を押し続けます. context_click(on_element=None)右クリック double_click(on_element=None)ダブルクリック drag_and_drop(source,target)ドラッグ drag_and_drop_by_offset(source,xoffset,yoffset)ターゲットを指定された位置 にドラッグ key_down(value,element=None)キーを押すと、次のCtrl+cキー を押すなど、いくつかのショートカットキーを簡単に実現できます. key_up(value,element=None)キーを離すと、上記の方法に合わせてCtrl+cを押して解放することができます. move_by_offset(xoffset,yoffset)マウスがある位置に移動することを指定し、2つの座標位置 を与える必要がある. move_to_element(to_element)指定した要素の位置 にマウスを移動する. move_to_element_with_offset(to_element,xoffset,yoffset)マウスをある要素位置のオフセット位置 に移動する. perform()は、前の一連のActionChainsを 実行する. release(on_element=None)押したマウス を放します. send_keys(*keys_to_send)ある要素の位置に値 を入力 send_keys_to_element(element,*keys_to_send)指定された要素にデータ を入力
from selenium.webdriver.common.action_chains import ActionChains
次に例を示します.
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()
以上の例では,マウスのドラッグ操作を実現し,まずインスタンス化し,その中のメソッドを呼び出し,対応する操作を完了する必要がある.
次に、一般的なマウスのシミュレーション操作を示します.
ActionsChains(browser).key_down(Keys.CONTROL).send_keys('c').perform()
ActionsChains(browser).key_down(Keys.CONTROL).send_keys('c').key_up(Keys.CONTROL).perform()