Python利用keyboard模塊實(shí)現(xiàn)鍵盤記錄操作
模擬鍵盤操作執(zhí)行自動(dòng)化任務(wù),我們常用的有 pyautowin 等自動(dòng)化操作模塊。但是這些模塊有一個(gè)很大的缺點(diǎn),編譯的時(shí)候非常依賴 windows 的C語(yǔ)言底層模塊。
今天介紹的這個(gè)模塊叫做 keyboard 它有一個(gè)最大的優(yōu)點(diǎn):純Python原生開(kāi)發(fā),編譯時(shí)完全不需要依賴C語(yǔ)言模塊。一行命令就能完成安裝,非常方便。
1.準(zhǔn)備
開(kāi)始之前,你要確保Python和pip已經(jīng)成功安裝在電腦上,如果沒(méi)有,可以訪問(wèn)這篇文章:超詳細(xì)Python安裝指南 進(jìn)行安裝。
(可選1) 如果你用Python的目的是數(shù)據(jù)分析,可以直接安裝Anaconda,它內(nèi)置了Python和pip.
(可選2) 此外,推薦大家用VSCode編輯器,它有許多的優(yōu)點(diǎn)
請(qǐng)選擇以下任一種方式輸入命令安裝依賴:
1. Windows 環(huán)境 打開(kāi) Cmd (開(kāi)始-運(yùn)行-CMD)。
2. MacOS 環(huán)境 打開(kāi) Terminal (command+空格輸入Terminal)。
3. 如果你用的是 VSCode編輯器 或 Pycharm,可以直接使用界面下方的Terminal.
pip install keyboard
2.基本使用
按下并釋放:模擬鍵盤按下某些鍵或組合鍵后釋放,比如shift + S, 并增加空格:
import?keyboard keyboard.press_and_release('shift+s, space')
輸入文字:
import?keyboard keyboard.write('Python 實(shí)用寶典')
等待觸發(fā)按鍵并響應(yīng):
# 公眾號(hào):Python實(shí)用寶典 import?keyboard keyboard.add_hotkey('ctrl+shift+a',?print, args=('寶典哥觸發(fā)了熱鍵')) keyboard.wait()
這樣程序就會(huì)監(jiān)控 "ctrl+shift+a" 組合鍵的觸發(fā)情況,一旦組合鍵觸發(fā),就會(huì)執(zhí)行第二個(gè)參數(shù)的函數(shù),并將第三個(gè)參數(shù)傳入第二個(gè)函數(shù)的參數(shù)中。
等待觸發(fā)某個(gè)按鍵:
# 公眾號(hào):Python實(shí)用寶典 import?keyboard keyboard.add_hotkey('ctrl+shift+a',?print, args=('寶典哥觸發(fā)了熱鍵')) keyboard.wait('esc')
這樣,按下 ESC 就會(huì)終止等待,繼續(xù)往下運(yùn)行程序。
3.高級(jí)功能
記錄功能:
# 公眾號(hào):Python實(shí)用寶典 import?keyboard recorded = keyboard.record(until='esc') print(recorded)
可以看到,除非你按下esc,它會(huì)記錄所有執(zhí)行過(guò)的鍵盤操作。
重放操作:
# 公眾號(hào):Python實(shí)用寶典 import?keyboard recorded = keyboard.record(until='esc') print(recorded) keyboard.play(recorded, speed_factor=3)
play方法能完全模擬你剛記錄下的所有鍵盤操作。
替換操作:
# 公眾號(hào):Python實(shí)用寶典 import?keyboard keyboard.add_abbreviation('@@',?'Python 實(shí)用寶典') keyboard.wait('esc')
輸入@@并按下空格,它會(huì)將你剛輸入的@@替換為 Python 實(shí)用寶典.
怎么樣,這個(gè)簡(jiǎn)單實(shí)用的Keyboard模塊,你學(xué)會(huì)使用了嗎?
到此這篇關(guān)于Python利用keyboard模塊實(shí)現(xiàn)鍵盤記錄操作的文章就介紹到這了,更多相關(guān)Python keyboard記錄鍵盤內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5訪問(wèn)系統(tǒng)剪切板QClipboard類詳細(xì)使用方法與實(shí)例
這篇文章主要介紹了python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5訪問(wèn)系統(tǒng)剪切板QClipboard類詳細(xì)使用方法與實(shí)例,需要的朋友可以參考下2020-02-02Python?運(yùn)算符Inplace?與Standard?
這篇文章主要介紹了Python?運(yùn)算符Inplace?與Standard,nplace運(yùn)算符的行為類似于普通運(yùn)算符,只是它們?cè)诳勺兒筒豢勺兡繕?biāo)的情況下以不同的方式運(yùn)行2022-09-09Python實(shí)現(xiàn)動(dòng)態(tài)柱狀圖的繪制
這篇文章主要為大家詳細(xì)介紹了Python實(shí)現(xiàn)動(dòng)態(tài)柱狀圖的繪制的相關(guān)資料,文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)與借鑒價(jià)值,需要的可以參考一下2022-12-12Python 使用 consul 做服務(wù)發(fā)現(xiàn)示例詳解
這篇文章主要介紹了Python 使用 consul 做服務(wù)發(fā)現(xiàn)示例詳解,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-03-03python爬蟲(chóng) 2019中國(guó)好聲音評(píng)論爬取過(guò)程解析
這篇文章主要介紹了python爬蟲(chóng) 2019中國(guó)好聲音評(píng)論爬取過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-08-08Keras構(gòu)建神經(jīng)網(wǎng)絡(luò)踩坑(解決model.predict預(yù)測(cè)值全為0.0的問(wèn)題)
這篇文章主要介紹了Keras構(gòu)建神經(jīng)網(wǎng)絡(luò)踩坑(解決model.predict預(yù)測(cè)值全為0.0的問(wèn)題),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-07-07Python3內(nèi)置模塊之json編解碼方法小結(jié)【推薦】
這篇文章主要介紹了Python3內(nèi)置模塊之json編解碼方法小結(jié),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-05-05