Python控制鍵盤鼠標(biāo)pynput的詳細(xì)用法
pynput這個(gè)庫(kù)讓你可以控制和監(jiān)控輸入設(shè)備。
對(duì)于每一種輸入設(shè)備,它包含一個(gè)子包來控制和監(jiān)控該種輸入設(shè)備:
- pynput.mouse:包含控制和監(jiān)控鼠標(biāo)或者觸摸板的類。
- pynput.keyboard:包含控制和監(jiān)控鍵盤的類。
地址:https://pypi.python.org/pypi/pynput
基本用法介紹:
from pynput.mouse import Button, Controller import time mouse = Controller() print(mouse.position) time.sleep(3) print('The current pointer position is {0}'.format(mouse.position)) #set pointer positon mouse.position = (277, 645) print('now we have moved it to {0}'.format(mouse.position)) #鼠標(biāo)移動(dòng)(x,y)個(gè)距離 mouse.move(5, -5) print(mouse.position) mouse.press(Button.left) mouse.release(Button.left) #Double click mouse.click(Button.left, 1) #scroll two steps down mouse.scroll(0, 500)
監(jiān)控鼠標(biāo)事件 :
from pynput import mouse def on_move(x, y ): print('Pointer moved to {o}'.format( (x,y))) def on_click(x, y , button, pressed): print('{0} at {1}'.format('Pressed' if pressed else 'Released', (x, y))) if not pressed: return False def on_scroll(x, y ,dx, dy): print('scrolled {0} at {1}'.format( 'down' if dy < 0 else 'up', (x, y))) while True: with mouse.Listener( no_move = on_move,on_click = on_click,on_scroll = on_scroll) as listener: listener.join()
鍵盤輸入用法:
from pynput.keyboard import Key, Controller keyboard = Controller() # 按下空格和釋放空格 #Press and release space keyboard.press(Key.space) keyboard.release(Key.space) # 按下a鍵和釋放a鍵 #Type a lower case A ;this will work even if no key on the physical keyboard is labelled 'A' keyboard.press('a') keyboard.release('a') #Type two upper case As keyboard.press('A') keyboard.release('A') # or with keyboard .pressed(Key.shift): keyboard.press('a') keyboard.release('a') #type 'hello world ' using the shortcut type method keyboard.type('hello world')
鍵盤監(jiān)聽:
from pynput import keyboard def on_press(key): try: print('alphanumeric key {0} pressed'.format(key.char)) except AttributeError: print('special key {0} pressed'.format(key)) def on_release(key): print('{0} released'.format(key)) if key == keyboard.Key.esc: return False while True: with keyboard.Listener( on_press = on_press, on_release = on_release) as listener: listener.join()
對(duì)于鼠標(biāo)來說,api就上面幾個(gè)。但是對(duì)于鍵盤來說還要?jiǎng)e的,詳細(xì)的查看:http://pythonhosted.org/pynput/index.html
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Python控制鼠標(biāo)鍵盤代碼實(shí)例
- python 實(shí)現(xiàn)控制鼠標(biāo)鍵盤
- Python 實(shí)現(xiàn)鍵盤鼠標(biāo)按鍵模擬
- Python監(jiān)聽鍵盤和鼠標(biāo)事件的示例代碼
- python PyAUtoGUI庫(kù)實(shí)現(xiàn)自動(dòng)化控制鼠標(biāo)鍵盤
- Python selenium鍵盤鼠標(biāo)事件實(shí)現(xiàn)過程詳解
- Python2.7:使用Pyhook模塊監(jiān)聽鼠標(biāo)鍵盤事件-獲取坐標(biāo)實(shí)例
- Python pyautogui模塊實(shí)現(xiàn)鼠標(biāo)鍵盤自動(dòng)化方法詳解
- python模擬鼠標(biāo)點(diǎn)擊和鍵盤輸入的操作
- python使用pynput庫(kù)操作、監(jiān)控你的鼠標(biāo)和鍵盤
相關(guān)文章
Python裝飾器實(shí)現(xiàn)函數(shù)運(yùn)行時(shí)間的計(jì)算
這篇文章主要為大家詳細(xì)介紹了Python函數(shù)運(yùn)行時(shí)間的計(jì)算,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2022-02-02用python實(shí)現(xiàn)各種數(shù)據(jù)結(jié)構(gòu)
這篇文章主要分享的是用python實(shí)現(xiàn)各種數(shù)據(jù)結(jié)構(gòu),快速排序、選擇排序、插入排序、歸并排序、堆排序heapq模塊等相關(guān)資料,感興趣的小伙伴可以參考一下2021-12-12Python request設(shè)置HTTPS代理代碼解析
這篇文章主要介紹了Python request設(shè)置HTTPS代理代碼解析,分享了相關(guān)代碼示例,小編覺得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-02-02對(duì)python操作kafka寫入json數(shù)據(jù)的簡(jiǎn)單demo分享
今天小編就為大家分享一篇對(duì)python操作kafka寫入json數(shù)據(jù)的簡(jiǎn)單demo,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-12-12Python操作Excel神器openpyxl使用教程(超詳細(xì)!)
openpyxl庫(kù)是一個(gè)很好處理xlsx的python庫(kù),下面這篇文章主要給大家介紹了關(guān)于Python辦公自動(dòng)化openpyxl使用的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-01-01Python繪圖并標(biāo)記出指定點(diǎn)(最大值點(diǎn))方法實(shí)例
我們?cè)谟胮ython畫散點(diǎn)圖的時(shí)候經(jīng)常會(huì)需要標(biāo)記出特定的點(diǎn),這篇文章主要給大家介紹了關(guān)于Python繪圖并標(biāo)記出指定點(diǎn)(最大值點(diǎn))的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-05-05