溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python selenium系列(三)常用操作類型及方法

發布時間:2020-08-17 01:37:47 來源:網絡 閱讀:4127 作者:平山 欄目:編程語言

一 前言

開展WEB UI自動化的核心思路,無非就是找到元素,然后操作元素這兩個內容。在python selenium系列(二)元素定位方式一文中,已經介紹了如何找到元素這項技能,本文將介紹第二項內容,即如何操作已經找到的元素。


 

二 操作方法分類

總體來說,可以將操作大體分成四類,即瀏覽器操作、鍵盤操作、鼠標操作、js腳本。


1.  瀏覽器常用操作方法:

方法

描述

driver.maximize_window()

窗口最大化

driver.back()

頁面返回

driver.forward()

頁面前進

 

2.  鍵盤常用操作方法:

send_keys() # Keys 模擬鍵盤輸入;模擬鍵盤按鍵、組合鍵等

部分key 列舉如下:

ALT= u'\ue00a'

ARROW_DOWN= u'\ue015'

ARROW_LEFT= u'\ue012'

ARROW_RIGHT= u'\ue014'

ARROW_UP= u'\ue013'

BACKSPACE= u'\ue003'

BACK_SPACE= u'\ue003'

CANCEL= u'\ue001'

CLEAR= u'\ue005'

COMMAND= u'\ue03d'

CONTROL= u'\ue009'

 

3.  鼠標常用操作方法:

click() # 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)

按下某個鍵盤上的鍵

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)

在某個元素位置松開鼠標左鍵

send_keys(*keys_to_send)

發送某個鍵到當前焦點的元素

send_keys_to_element(element,   *keys_to_send)

發送某個鍵到指定元素

 

4.  調用js腳本:

execute_script  #執行js腳本完成特定操作

 

操作實戰舉例

1.      瀏覽器操作實例

python selenium系列(三)常用操作類型及方法

2.      鍵盤操作實例

python selenium系列(三)常用操作類型及方法

3.      鼠標操作實例

python selenium系列(三)常用操作類型及方法

4.      腳本操作實例

python selenium系列(三)常用操作類型及方法

 

額外知識點補充

ActionChains(browser).double_click(click_button).perform() #鼠標雙擊操作舉例

在鼠標操作中,注意到ActionChains(driver).method,當調用該方法時,動作不會立即被執行,而是會將所有的操作按順序存放在一個隊列里,當調用perform()方法時,隊列中的時間會依次執行,所以使用鼠標操作時,最后需要調用perform()方法完成動作的執行。

 

其他資源

關于python selenium元素常用操作方法的視頻講解,請參看:http://i.youku.com/weiworld521  26節。

 

 

 


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女