中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

怎么使用python的pyautogui控制鼠標和鍵盤

發布時間:2022-10-17 14:44:00 來源:億速云 閱讀:153 作者:iii 欄目:編程語言

這篇文章主要介紹了怎么使用python的pyautogui控制鼠標和鍵盤的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇怎么使用python的pyautogui控制鼠標和鍵盤文章都會有所收獲,下面我們一起來看看吧。

PyAutoGUI是一個純Python的GUI自動化工具,其目的是可以用程序自動控制鼠標和鍵盤操作,多平臺支持(Windows,OS X,Linux)。

1、安裝

pip3 install pyautogui

2、pyautogui鼠標操作樣例

import pyautogui# 獲取當前屏幕分辨率screenWidth, screenHeight = pyautogui.size()# 獲取當前鼠標位置currentMouseX, currentMouseY = pyautogui.position()# 2秒鐘鼠標移動坐標為100,100位置  絕對移動pyautogui.moveTo(x=100, y=100,duratinotallow=2, tween=pyautogui.linear)#鼠標移到屏幕中央。pyautogui.moveTo(screenWidth / 2, screenHeight / 2)# 鼠標左擊一次#pyautogui.click()# x # y # clicks 點擊次數# interval點擊之間的間隔# button 'left', 'middle', 'right' 對應鼠標 左 中 右或者取值(1, 2, or 3)# tween 漸變函數pyautogui.click(x=None, y=None, clicks=1, interval=0.0, buttnotallow='left', duratinotallow=0.0, tween=pyautogui.linear)# 鼠標相對移動 ,向下移動#pyautogui.moveRel(None, 10)pyautogui.moveRel(xOffset=None, yOffset=10,duratinotallow=0.0, tween=pyautogui.linear)# 鼠標當前位置0間隔雙擊#pyautogui.doubleClick()pyautogui.doubleClick(x=None, y=None, interval=0.0, buttnotallow='left', duratinotallow=0.0, tween=pyautogui.linear)# 鼠標當前位置3擊#pyautogui.tripleClick()pyautogui.tripleClick(x=None, y=None, interval=0.0, buttnotallow='left', duratinotallow=0.0, tween=pyautogui.linear)#右擊pyautogui.rightClick()#中擊pyautogui.middleClick()#  用緩動/漸變函數讓鼠標2秒后移動到(500,500)位置#  use tweening/easing function to move mouse over 2 seconds.pyautogui.moveTo(x=500, y=500, duratinotallow=2, tween=pyautogui.easeInOutQuad)#鼠標拖拽pyautogui.dragTo(x=427, y=535, duratinotallow=3,buttnotallow='left')#鼠標相對拖拽pyautogui.dragRel(xOffset=100,yOffset=100,duratinotallow=,buttnotallow='left',mouseDownUp=False)#鼠標移動到x=1796, y=778位置按下pyautogui.mouseDown(x=1796, y=778, buttnotallow='left')#鼠標移動到x=2745, y=778位置松開(與mouseDown組合使用選中)pyautogui.mouseUp(x=2745, y=778, buttnotallow='left',duratinotallow=5)#鼠標當前位置滾輪滾動pyautogui.scroll()#鼠標水平滾動(Linux)pyautogui.hscroll()#鼠標左右滾動(Linux)pyautogui.vscroll()

3、pyautogui鍵盤操作樣例

#模擬輸入信息pyautogui.typewrite(message='Hello world!',interval=0.5)#點擊ESCpyautogui.press('esc')# 按住shift鍵pyautogui.keyDown('shift')# 放開shift鍵pyautogui.keyUp('shift')# 模擬組合熱鍵pyautogui.hotkey('ctrl', 'c')

4、按鍵支持

按鍵

說明

enter(或return 或 \n)

回車

esc

ESC鍵

shiftleftshiftright

左右SHIFT鍵

altleftaltright

左右ALT鍵

ctrlleftctrlright

左右CTRL鍵

tab (\t)

TAB鍵

backspacedelete

BACKSPACE 、DELETE鍵

pageuppagedown

PAGE UP 和 PAGE DOWN鍵

homeend

HOME 和 END鍵

updownleft,right

箭頭鍵

f1f2f3….

F1…….F12鍵

volumemutevolumedown,volumeup

有些鍵盤沒有

pause

PAUSE鍵

capslocknumlock,scrolllock

CAPS LOCK, NUM LOCK, 和 SCROLLLOCK 鍵

insert

INS或INSERT鍵

printscreen

PRTSC 或 PRINT SCREEN鍵

winleftwinright

Win鍵

command

Mac OS X command鍵

5、截屏

5.1、整個屏幕截圖并保存

im1 = pyautogui.screenshot()im1.save('my_screenshot.png')im2 = pyautogui.screenshot('my_screenshot2.png')

5.2、屏幕查找圖片位置并獲取中間點

#在當前屏幕中查找指定圖片(圖片需要由系統截圖功能截取的圖)coords = pyautogui.locateOnScreen('folder.png')#獲取定位到的圖中間點坐標x,y=pyautogui.center(coords)#右擊該坐標點pyautogui.rightClick(x,y)

6、安全設置

import pyautogui#保護措施,避免失控pyautogui.FAILSAFE = True#為所有的PyAutoGUI函數增加延遲。默認延遲時間是0.1秒。pyautogui.PAUSE = 0.5

7、實例說明(僅供學習)

7.1、需求場景

大量的windows端上使用某公司的代理軟件,不時會出現不可用的情況,多次反饋某公司無果,可又不能不用,只能是定期去重啟一下。

7.2、思路

使用Python的pyautogui模塊替代手動登陸。

7.3、實踐

1、由于國際鏈路問題,往往不能一次就成功登陸。再打開軟件時和點擊登陸時均可能出現幾次不等的登陸失敗提示,需要點擊OK按鈕確認。

2、程序會嘗試進行五輪的登陸操作(使用對應的階段的圖片),期間檢測到成功登陸則退出。

3、建腳本加入到開機啟動(至于重啟windows的任務就交給Ansible,將再其他文章進行詳細說明)

# -*- coding: utf-8 -*-import osimport timeimport subprocessimport pyautogui

def kill_proc(description, proc_name):    try:        print('終止%s進程...' % (description))        os.system('taskkill /IM %s /F' % (proc_name))    except Exception as reason:        print(e)def run_proc(description, proc_name):    try:        print('啟動%s進程...' % (description))        subprocess.Popen("%s" % (proc_name))        time.sleep(8)    except Exception as reason:        print('啟動進程失敗!!\n錯誤的原因是:' + str(reason))        os._exit(0)def check_img(description, img_name):    try:        print('查找%s圖像' % (description))        button = pyautogui.locateOnScreen("%s" % (img_name))        print(button)        if description == 'Success':            return 1        if button:            print('點擊%s圖像' % (description))            button_center = pyautogui.center(button)            pyautogui.click(button_center)            time.sleep(1)    except BaseException:        print('沒有找到%s圖像' % (description))        return 0if __name__ == '__main__':    count = 1    kill_proc('911', 'Client.exe')    run_proc('911', 'Client.exe')    for i in range(5):        print('=====進行第%s輪檢查=====' % (count))        count += 1        check_img('OK1', 'C:\\error_OK1.PNG')        check_img('OK2', 'C:\\error_OK2.PNG')        check_img('Login', 'C:\\Login.PNG')        time.sleep(5)        if check_img('Success', 'C:\\success.PNG'):            print('執行成功!!')            break

怎么使用python的pyautogui控制鼠標和鍵盤

關于“怎么使用python的pyautogui控制鼠標和鍵盤”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“怎么使用python的pyautogui控制鼠標和鍵盤”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

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

AI

抚州市| 松桃| 维西| 南投县| 布拖县| 孝感市| 丽水市| 霍林郭勒市| 长泰县| 阿合奇县| 济源市| 庆城县| 平原县| 称多县| 勃利县| 连州市| 延长县| 三河市| 肇东市| 乳山市| 贡觉县| 溆浦县| 湖北省| 合肥市| 合山市| 平舆县| 都昌县| 青浦区| 土默特右旗| 清徐县| 旬邑县| 池州市| 松滋市| 宁城县| 兴仁县| 霞浦县| 宿州市| 明水县| 黔江区| 新丰县| 峨眉山市|