不管什麼自動化,都避免不了模擬一些鼠標操做,pywinauto模塊中也存在模擬鼠標操做方法spa
mouse
mouse是pywinauto一個模擬鼠標的方法庫,能夠幫助模擬鼠標操做,直接輸入座標就能夠了。code
座標起始是在電腦屏幕的左上角開始計算。以下圖:orm
使用方法: from pywinauto import mouse blog
使用鼠標操做,通常就是單擊,右擊。雙擊。長按,拖動。滑動等操做。這些pywinauto均可以幫助咱們進行實踐的utf-8
鼠標單擊
源碼:input
def click(button='left', coords=(0, 0)): """單擊指定的座標""" _perform_click_input(button=button, coords=coords
使用方法:直接進行填入座標。源碼
# coding:utf-8 from pywinauto import mouse # 鼠標左鍵 mouse.click(coords=(28,50))
鼠標右擊
源碼:自動化
def right_click(coords=(0, 0)): """右擊指定的座標"" _perform_click_input(button='right', coords=coords)
使用方法:form
# coding:utf-8 from pywinauto import mouse # 鼠標右鍵 mouse.right_click(coords=(900,400))
鼠標雙擊
源碼:class
def double_click(button='left', coords=(0, 0)): """雙擊指定的座標""" _perform_click_input(button=button, coords=coords, double=True)
使用方法:
# coding:utf-8 from pywinauto import mouse # 鼠標雙擊 mouse.double_click(coords=(900,400))
鼠標長按
這個長按安靜理解通常能夠和釋放鼠標一塊兒用,理解成咱們使用的拖動
源碼:
def press(button='left', coords=(0, 0)): """按下鼠標按鈕""" _perform_click_input(button=button, coords=coords, button_down=True, button_up=False)
使用方法:
# coding:utf-8 from pywinauto import mouse # 鼠標長按 mouse.press(coords=(900,400))
鼠標釋放
源碼:
def release(button='left', coords=(0, 0)): """Release the mouse button""" _perform_click_input(button=button, coords=coords, button_down=False, button_up=True)
使用方法:
# coding:utf-8 from pywinauto import mouse # 釋放鼠標位置 mouse.release(coords=(900,400))
滑動鼠標
源碼:
def scroll(coords=(0, 0), wheel_dist=1): """作鼠標滾輪""" if wheel_dist: _perform_click_input(button='wheel', wheel_dist=wheel_dist, coords=coords)
使用方法:
# coding:utf-8 from pywinauto import mouse # 鼠標上下滑動 # 數字 > 0 :向上滑動,數字 < 0 :向下滑動 mouse.scroll(coords=(900,400),wheel_dist=-1)
小試牛刀
咱們經過上面的方法,而後進行實踐,看看效果如何
這裏安靜把長按和釋放放在一塊兒了,能夠更直觀的看到狀態
# coding:utf-8 from pywinauto import mouse import time # 鼠標左鍵 mouse.click(coords=(350,52)) time.sleep(2) mouse.click(coords=(900,400)) # 鼠標上下滑動 # 數字 > 0 :向上滑動,數字 < 0 :向下滑動 mouse.scroll(coords=(900,400),wheel_dist=-5) # 鼠標右鍵 mouse.right_click(coords=(900,400)) time.sleep(2) time.sleep(2) # 鼠標雙擊 mouse.double_click(coords=(1571,347)) time.sleep(5) # 鼠標長按 mouse.press(coords=(900,400)) time.sleep(2) # 釋放鼠標位置 mouse.release(coords=(1333,357))