Python利用PyAutoGUI模塊實現(xiàn)控制鼠標(biāo)鍵盤
前言
PyAutoGUI是一個簡單易用,跨平臺的可以模擬鍵盤鼠標(biāo)進(jìn)行自動操作的python庫。
使用pip的方式安裝pyautogui模塊
pip install pyautogui
pyautogui在使用的時候有兩個比較關(guān)鍵的隱患(程序在啟動起來以后很難關(guān)閉)需要注意一下。一是鼠標(biāo)出現(xiàn)在屏幕的最上方會出現(xiàn)報錯,二是鍵盤的自動操作太快,所以需要先設(shè)置一下相關(guān)的參數(shù)。
import pyautogui as ui # 導(dǎo)入pyautogui代碼塊 ui.FAILSAFE = False # 關(guān)閉自動防御故障的功能 ui.PAUSE = 1 # 設(shè)置鍵盤操作的時候停頓間隔時間為1秒
1、鼠標(biāo)的相關(guān)控制
'''獲取屏幕分辨率''' print(ui.size()) # Size(width=1920, height=1080) # 屏幕分標(biāo)率:寬:1920px、高:1080px '''移動鼠標(biāo)到指定位置''' ui.moveTo(250, 400, duration=1) # duration 參數(shù)設(shè)置移動到指定位置的時間為1秒鐘 '''按方向移動鼠標(biāo)''' ui.moveRel(200, 300, duration=2) # 鼠標(biāo)向右移動200px、向下移動300px,移動時間為2秒鐘 '''獲取當(dāng)前鼠標(biāo)的位置''' print(ui.position()) # Point(x=450, y=700) '''單擊鼠標(biāo)''' ui.click(200, 200, button='left') # 在屏幕200px,200px的位置點擊鼠標(biāo)左鍵 ui.click(200, 200, button='right') # 在屏幕200px,200px的位置點擊鼠標(biāo)右鍵 ui.click(200, 200, button='middle') # 在屏幕200px,200px的位置點擊鼠標(biāo)中鍵 '''雙擊鼠標(biāo)''' ui.doubleClick(200, 200) # 在屏幕200px,200px的位置雙擊鼠標(biāo)左鍵 ui.rightClick(200, 200) # 在屏幕200px,200px的位置雙擊鼠標(biāo)右鍵 ui.middleClick(200, 200) # 在屏幕200px,200px的位置雙擊鼠標(biāo)中鍵 '''按下與釋放鼠標(biāo)''' ui.mouseDown() # 按下鼠標(biāo) ui.mouseUp() # 釋放鼠標(biāo) '''拖動鼠標(biāo)''' ui.dragTo(200, 300, duration=1) # 拖動鼠標(biāo)到指定位置 ui.dragRel(200, 300, duration=4) # 按方向拖動鼠標(biāo) '''滾動鼠標(biāo)''' ui.scroll(450) # 向上滾動450個像素單位
2、鍵盤的相關(guān)控制
''' pyautogui.keyDown() : 模擬按鍵按下; pyautogui.keyUp() : 模擬按鍵釋放; pyautogui.press() : # 就是調(diào)用keyDown() & keyUp(),模擬一次按鍵; pyautogui.typewrite('this',0.5) : 第一參數(shù)是輸入內(nèi)容,第二個參數(shù)是每個字符間的間隔時間; pyautogui.typewrite(['T','h','i','s']):typewrite 還可以傳入單字母的列表; ''' ui.keyDown('ctrl') # 按下ctrl鍵 ui.press('Y') # 按一下Y鍵 ui.keyUp('ctrl') # 釋放ctrl鍵 ui.typewrite('YYDS', 0.5) # 輸入YYDS的字符串,每個字符之間的時間間隔是0.5秒 '''一些特定鍵的使用''' # 可以使用typewrite函數(shù)調(diào)用類似于enter的特殊按鍵 ui.typewrite(['enter']) # 模擬按一次enter鍵 ''' 鍵盤字符串 說明 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…. f12 F1…….F12鍵 volumemute, volumedown,volumeup 聲音變大變小靜音(有些鍵盤沒有) pause PAUSE鍵,暫停鍵 capslock CAPS LOCK 鍵 numlock NUM LOCK 鍵 scrolllock SCROLLLOCK 鍵 insert INSERT鍵 printscreen PRINT SCREEN鍵 winleft, winright Win鍵(windows ) command command鍵(Mac OS X ) option option(Mac OS X) '''
可以根據(jù)上面的按鍵處理列表對應(yīng)的字符串來使用typewrite函數(shù)處理特殊按鍵。
ui.typewrite(['esc']) # 模擬按一下esc鍵 '''快捷鍵的模擬處理''' # 程序猿神器:CV大法 ui.hotkey('ctrl','c') # ctrl + c ui.hotkey('ctrl','v') # ctrl + v
也可以使用傳統(tǒng)的方式挨個按鍵,最后就組合成了的快捷鍵
# 模擬代碼格式化快捷鍵ctrl + alt +l ui.keyDown('ctrl') ui.keyDown('alt') ui.keyDown('l') # 挨個釋放這幾個鍵 ui.keyUp('l') ui.keyUp('alt') ui.keyUp('ctrl')
到此這篇關(guān)于Python利用PyAutoGUI模塊實現(xiàn)控制鼠標(biāo)鍵盤的文章就介紹到這了,更多相關(guān)Python PyAutoGUI控制鼠標(biāo)鍵盤內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Python pyautogui模擬鍵盤輸入操作的示例詳解
- python pyautogui實現(xiàn)圖片識別點擊失敗后重試功能
- python pyautogui手動活動(模擬鼠標(biāo)鍵盤)自動化庫使用
- Python利用PyAutoGUI輕松搞定圖片上傳
- Python自動操作神器PyAutoGUI的使用教程
- Python中PyAutoGUI幫助文檔(推薦!)
- python教程之利用pyautogui圖形自動化擊敗重復(fù)性辦公任務(wù)
- Python中pyautogui庫的使用方法匯總
- python編程PyAutoGUI庫使用與安裝簡介
- python 利用PyAutoGUI快速構(gòu)建自動化操作腳本
- Python中PyAutoGUI?庫的使用
相關(guān)文章
Python實現(xiàn)樹的先序、中序、后序排序算法示例
這篇文章主要介紹了Python實現(xiàn)樹的先序、中序、后序排序算法,結(jié)合具體實例形式分析了Python數(shù)據(jù)結(jié)構(gòu)中樹的定義及常用遍歷、排序操作技巧,需要的朋友可以參考下2017-06-06shell命令行,一鍵創(chuàng)建 python 模板文件腳本方法
下面小編就為大家分享一篇shell命令行,一鍵創(chuàng)建 python 模板文件腳本方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-03-03python實現(xiàn)按鍵精靈找色點擊功能教程,使用pywin32和Pillow庫
這篇文章主要介紹了python實現(xiàn)按鍵精靈找色點擊功能教程,使用pywin32和Pillow庫,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-06-06Python機器學(xué)習(xí)NLP自然語言處理基本操作詞向量模型
本文是Python機器學(xué)習(xí)NLP自然語言處理系列文章,帶大家開啟一段學(xué)習(xí)自然語言處理 (NLP) 的旅程。本篇文章主要學(xué)習(xí)NLP自然語言處理基本操作詞向量模型2021-09-09python解析Chrome瀏覽器歷史瀏覽記錄和收藏夾數(shù)據(jù)
大家好,本篇文章主要講的是python解析Chrome瀏覽器歷史瀏覽記錄和收藏夾數(shù)據(jù),感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下2022-02-02python為tornado添加recaptcha驗證碼功能
tornado作為微框架,并沒有自帶驗證碼組件,recaptcha是著名的驗證碼解決方案,簡單易用,被很多公司運用來防止惡意注冊和評論。tornado添加recaptchaHA非常容易2014-02-02