python利用 keyboard 庫記錄鍵盤事件
今天也不知道是想了什么,突然就想要試試看我有效擊鍵時(shí)的手速到底有多快。為此,需要記錄下來擊鍵的記錄。于是找到了 Python 的 keyboard 庫。
安裝非常簡單,只需執(zhí)行 pip install keyboard 即可。
鍵盤事件錄制
保存并執(zhí)行如下代碼
import keyboardimport timekeyboard.hook(lambda e: print(e, time.clock()))keyboard.wait(’Ctrl’)
這里,我們利用 keyboard.hook 為每個(gè)鍵盤事件下鉤子,并且執(zhí)行其中的 lambda 函數(shù)。keyboard.wait() 的作用是阻塞進(jìn)程,直到按下 Ctrl 鍵。
測試結(jié)果如下:
KeyboardEvent(g down) 4.450576466KeyboardEvent(g up) 4.505627652KeyboardEvent(i down) 4.510628277KeyboardEvent(t down) 4.570555791KeyboardEvent(i up) 4.580582066KeyboardEvent(space down) 4.581583136KeyboardEvent(p down) 4.630656009KeyboardEvent(t up) 4.671189791KeyboardEvent(space up) 4.693182730KeyboardEvent(p up) 4.705543556KeyboardEvent(u down) 4.705867633KeyboardEvent(s down) 4.730623806KeyboardEvent(u up) 4.750832241KeyboardEvent(s up) 4.795770594KeyboardEvent(h down) 4.810543976KeyboardEvent(h up) 4.86056459KeyboardEvent(enter down) 4.920739469KeyboardEvent(enter up) 4.930514276KeyboardEvent(ctrl down) 7.030813124
從中可見,在敲下 git push<enter> 這條命令的過程中,發(fā)生了多次擊鍵交錯(cuò)的現(xiàn)象(即上一個(gè)按鍵還未完全彈起,下一個(gè)按鍵就已經(jīng)觸發(fā))。這是在高速擊鍵時(shí)很常見的現(xiàn)象。此外,輸入到執(zhí)行這條命令,總共花費(fèi)了不到 0.5 s 的時(shí)間,不愧曾經(jīng)單身多年 ←_←。
熱鍵捕獲綁定
import keyboard print(’Press and release your desired hotkey: ’)hotkey = keyboard.read_hotkey()print(’Hotkey selected: ’, hotkey) def on_triggered(): print('Triggered!') keyboard.add_hotkey(hotkey, on_triggered)print('Press ESC to stop.')
以上就是python利用 keyboard 庫記錄鍵盤事件的詳細(xì)內(nèi)容,更多關(guān)于python 記錄鍵盤事件的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!
相關(guān)文章:
1. jscript與vbscript 操作XML元素屬性的代碼2. php使用正則驗(yàn)證密碼字段的復(fù)雜強(qiáng)度原理詳細(xì)講解 原創(chuàng)3. ASP將數(shù)字轉(zhuǎn)中文數(shù)字(大寫金額)的函數(shù)4. XML入門的常見問題(三)5. ASP基礎(chǔ)入門第四篇(腳本變量、函數(shù)、過程和條件語句)6. HTML5實(shí)戰(zhàn)與剖析之觸摸事件(touchstart、touchmove和touchend)7. XML在語音合成中的應(yīng)用8. 基于PHP做個(gè)圖片防盜鏈9. 不要在HTML中濫用div10. .NET Framework各版本(.NET2.0 3.0 3.5 4.0)區(qū)別
