pyautogui自動化控制鼠標和鍵盤操作的步驟
PyAutoGUI是一個純Python的GUI自動化工具,其目的是可以用程序自動控制鼠標和鍵盤操作,多平臺支持(Windows,OS X,Linux)。
安裝
pip3 install pyautogui
pyautogui鼠標操作樣例
import pyautogui # 獲取當(dāng)前屏幕分辨率 screenWidth, screenHeight = pyautogui.size() # 獲取當(dāng)前鼠標位置 currentMouseX, currentMouseY = pyautogui.position() # 2秒鐘鼠標移動坐標為100,100位置 絕對移動 #pyautogui.moveTo(100, 100,2) pyautogui.moveTo(x=100, y=100,duration=2, tween=pyautogui.linear) #鼠標移到屏幕中央。 pyautogui.moveTo(screenWidth / 2, screenHeight / 2) # 鼠標左擊一次 #pyautogui.click() # x # y # clicks 點擊次數(shù) # interval點擊之間的間隔 # button 'left', 'middle', 'right' 對應(yīng)鼠標 左 中 右或者取值(1, 2, or 3) # tween 漸變函數(shù) # pyautogui.click(x=None, y=None, clicks=1, interval=0.0, button='left', duration=0.0, tween=pyautogui.linear) # 鼠標相對移動 ,向下移動 #pyautogui.moveRel(None, 10) pyautogui.moveRel(xOffset=None, yOffset=10,duration=0.0, tween=pyautogui.linear) # 鼠標當(dāng)前位置0間隔雙擊 #pyautogui.doubleClick() pyautogui.doubleClick(x=None, y=None, interval=0.0, button='left', duration=0.0, tween=pyautogui.linear) # 鼠標當(dāng)前位置3擊 #pyautogui.tripleClick() pyautogui.tripleClick(x=None, y=None, interval=0.0, button='left', duration=0.0, tween=pyautogui.linear) #右擊 pyautogui.rightClick() #中擊 pyautogui.middleClick() # 用緩動/漸變函數(shù)讓鼠標2秒后移動到(500,500)位置 # use tweening/easing function to move mouse over 2 seconds. pyautogui.moveTo(x=500, y=500, duration=2, tween=pyautogui.easeInOutQuad) #鼠標拖拽 pyautogui.dragTo(x=427, y=535, duration=3,button='left') #鼠標相對拖拽 pyautogui.dragRel(xOffset=100,yOffset=100,duration=,button='left',mouseDownUp=False) #鼠標移動到x=1796, y=778位置按下 pyautogui.mouseDown(x=1796, y=778, button='left') #鼠標移動到x=2745, y=778位置松開(與mouseDown組合使用選中) pyautogui.mouseUp(x=2745, y=778, button='left',duration=5) #鼠標當(dāng)前位置滾輪滾動 pyautogui.scroll() #鼠標水平滾動(Linux) pyautogui.hscroll() #鼠標左右滾動(Linux) pyautogui.vscroll()
pyautogui鍵盤操作樣例
#模擬輸入信息 pyautogui.typewrite(message='Hello world!',interval=0.5) #點擊ESC pyautogui.press('esc') # 按住shift鍵 pyautogui.keyDown('shift') # 放開shift鍵 pyautogui.keyUp('shift') # 模擬組合熱鍵 pyautogui.hotkey('ctrl', 'c')
按鍵支持
按鍵 | 說明 |
---|---|
enter(或return 或 \n) | 回車 |
esc | ESC鍵 |
shiftleft, shiftright | 左右SHIFT鍵 |
altleft, altright | 左右ALT鍵 |
ctrlleft, ctrlright | 左右CTRL鍵 |
tab (\t) | TAB鍵 |
backspace, delete | BACKSPACE 、DELETE鍵 |
pageup, pagedown | PAGE UP 和 PAGE DOWN鍵 |
home, end | HOME 和 END鍵 |
up, down, left,right | 箭頭鍵 |
f1, f2, f3…. | F1…….F12鍵 |
volumemute, volumedown,volumeup | 有些鍵盤沒有 |
pause | PAUSE鍵 |
capslock, numlock,scrolllock | CAPS LOCK, NUM LOCK, 和 SCROLLLOCK 鍵 |
insert | INS或INSERT鍵 |
printscreen | PRTSC 或 PRINT SCREEN鍵 |
winleft, winright | Win鍵 |
command | Mac OS X command鍵 |
提示信息
alert
#pyautogui.alert('This is an alert box.','Test') pyautogui.alert(text='This is an alert box.', title='Test')
option
#pyautogui.confirm('Shall I proceed?') pyautogui.confirm('Enter option.', buttons=['A', 'B', 'C'])
password
a = pyautogui.password('Enter password (text will be hidden)') print(a)
prompt
a = pyautogui.prompt('input message') print(a)
截屏
整個屏幕截圖并保存
im1 = pyautogui.screenshot() im1.save('my_screenshot.png') im2 = pyautogui.screenshot('my_screenshot2.png')
屏幕查找圖片位置并獲取中間點
#在當(dāng)前屏幕中查找指定圖片(圖片需要由系統(tǒng)截圖功能截取的圖) coords = pyautogui.locateOnScreen('folder.png') #獲取定位到的圖中間點坐標 x,y=pyautogui.center(coords) #右擊該坐標點 pyautogui.rightClick(x,y)
安全設(shè)置
import pyautogui #保護措施,避免失控 pyautogui.FAILSAFE = True #為所有的PyAutoGUI函數(shù)增加延遲。默認延遲時間是0.1秒。 pyautogui.PAUSE = 0.5
到此這篇關(guān)于pyautogui自動化控制鼠標和鍵盤操作的步驟的文章就介紹到這了,更多相關(guān)pyautogui 控制鼠標和鍵盤內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
pycharm配置安裝autopep8自動規(guī)范代碼的實現(xiàn)
這篇文章主要介紹了pycharm配置安裝autopep8自動規(guī)范代碼的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03Python網(wǎng)絡(luò)爬蟲信息提取mooc代碼實例
這篇文章主要介紹了python網(wǎng)絡(luò)爬蟲與信息提取mooc,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-03-03tensorflow 只恢復(fù)部分模型參數(shù)的實例
今天小編就為大家分享一篇tensorflow 只恢復(fù)部分模型參數(shù)的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01淺談python數(shù)據(jù)結(jié)構(gòu)之動態(tài)規(guī)劃
這篇文章主要介紹了淺談python數(shù)據(jù)結(jié)構(gòu)之動態(tài)規(guī)劃,可能很多小伙伴會覺得這個詞很陌生,覺得這是一種很復(fù)雜的思想,學(xué)習(xí)起來很困難,其實并不是這樣,動態(tài)規(guī)劃所講述的知識與動態(tài)與規(guī)劃并無太大關(guān)聯(lián),需要的朋友可以參考下2023-07-07