pywinauto客戶端自動化---模擬鼠標操作


  無論什么自動化,都避免不了模擬一些鼠標操作,pywinauto模塊中也存在模擬鼠標操作方法

mouse

mouse是pywinauto一個模擬鼠標的方法庫,可以幫助模擬鼠標操作,直接輸入坐標就可以了。

坐標起始是在電腦屏幕的左上角開始計算。如下圖:

使用方法: from pywinauto import mouse 

使用鼠標操作,一般就是單擊,右擊。雙擊。長按,拖動。滑動等操作。這些pywinauto都可以幫助我們進行實踐的

鼠標單擊

源碼:

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)

使用方法:

# coding:utf-8
from pywinauto import mouse

# 鼠標右鍵
mouse.right_click(coords=(900,400))

鼠標雙擊

源碼:

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))

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM