6.4 操縱鼠標:PyAutoGUI
6.4.1 說明
PyAutoGUI是一個Python的GUI自動化工具,它可以讓程序自動控制鼠標和鍵盤的一系列操作。它能夠模擬鼠標的移動、點擊、拖拽等操作,以及鍵盤的按鍵按下和釋放等操作。PyAutoGUI還提供了其他功能,如獲取屏幕分辨率、判斷鼠標是否在屏幕上、顯示提示框等。它可以在沒有安裝其他依賴庫的情況下獨立運行。PyAutoGUI對于自動化任務、測試腳本的編寫以及一些趣味性的項目都非常有用。
注意,PyAutoGUI是跨平臺的,它不僅支持Windows,還支持Linux和MAC。安裝:
>>> pip install PyAutoGUI
6.4.2 position()
獲取當前鼠標光標的坐標。元組類型,第1個為x坐標,第2個為y坐標。
import pyautogui
from icecream import ic
x, y = pyautogui.position()
ic(x, y)
21:41:25|> x: 719, y: 470
6.4.3 size()
獲取當前屏幕的分辨率,返回結果為元組類型,包括2個元素,分別是:橫坐標像素和縱坐標像素。
import pyautogui
from icecream import ic
x, y = pyautogui.size()
ic(x, y)
21:42:10|> x: 2560, y: 1440
6.4.4 onScreen(x, y=None)
返回給定的xy坐標是否在主屏幕上。請注意,此函數(shù)不適用于輔助屏幕。
import pyautogui
from icecream import ic
ic(pyautogui.onScreen(1220, 68))
ic(pyautogui.onScreen(12200, 68))
21:45:48|> pyautogui.onScreen(1220, 68): True
21:45:48|> pyautogui.onScreen(12200, 68): False
6.4.5 mouseDown、mouseUp
模擬將鼠標移動到目標位置后按下或彈起。參數(shù)
x=None 橫坐標
y=None 縱坐標
button=PRIMARY 要按下的鼠標按鍵,可選的有:left、middle、right、primary、secondary,默認為primary
duration 持續(xù)時間
tween 漸變
logScreenshot 是否截圖,True or False
_pause 是否暫停,True or False
import pyautogui
pyautogui.mouseDown(287, 220, logScreenshot=True)
pyautogui.mouseUp(287, 220, logScreenshot=True)
將鼠標移動到指定位置后,按下并彈起,并且在按下和彈起的時候進行全屏截圖。生成的圖片將會存放在代碼文件所在的文件夾內(nèi)。
6.4.6 click、leftClick、rightClick、middleClick、doubleClick、tripleClick
模擬將鼠標移動到目標位置后完整的點擊(包括按下和彈起)。通過這些函數(shù)的名字也能知道他們的區(qū)別。參數(shù)
x=None 橫坐標
y=None 縱坐標
clicks 點擊的次數(shù)
button=PRIMARY 要按下的鼠標按鍵,可選的有:left、middle、right、primary、secondary,默認為primary
duration 持續(xù)時間
tween 漸變
logScreenshot 是否截圖,True or False
_pause 是否暫停,True or False
這個方法和之前的mouseDown、mouseUp差不多,這里也就不多介紹了。
6.4.7 scroll、hscroll、vscroll
滾動鼠標滑輪進行滾動屏幕,滾動的方向(水平、垂直)和系統(tǒng)有關。windows系統(tǒng)中scroll為垂直方向。其它2個則為對應的方向。參數(shù)
Clicks: 滾動量,正數(shù)向上滾動,將上方內(nèi)容滾動到下方(顯示更上面的內(nèi)容),負數(shù)反之
X: (int, float, None, tuple, optional): 滾動時,鼠標光標橫坐標所在位置,如果是tuple類型則因為光標的橫縱坐標
Y: (int, float, None, optional): 滾動時,鼠標光標縱坐標所在位置
LogScreenShot: 是否要截圖
6.4.8 moveTo
將鼠標移動到某個位置。參數(shù)
x=None 橫坐標
y=None 縱坐標
duration 持續(xù)時間
tween 漸變
logScreenshot 是否截圖,True or False
_pause 是否暫停,True or False文章來源:http://www.zghlxwxcb.cn/news/detail-830315.html
6.4.9 dragTo
參數(shù)
x=None 橫坐標
y=None 縱坐標
duration 持續(xù)時間
tween 漸變
button=PRIMARY 要按下的鼠標按鍵,可選的有:left、middle、right、primary、secondary,默認為primary
logScreenshot 是否截圖,True or False
_pause 是否暫停,True or False
mouseDownUp 是否要在最后點擊一次拖動某個軟件到屏幕右邊
文章來源地址http://www.zghlxwxcb.cn/news/detail-830315.html
import pyautogui
pyautogui.moveTo(422, 23)
pyautogui.dragTo(1422, 23, duration=0.5)
到了這里,關于[Python進階] 操縱鼠標:PyAutoGUI的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!