使用Python的pynput庫控制滑鼠和鍵盤
介紹
pynput 庫允許您控制和監控/監聽您的輸入裝置,例如鍵盤和滑鼠。
pynput.mouse 允許您控制和監控滑鼠,而 pynput.keyboard 允許您控制和監控鍵盤。
在本文中,我們將滑鼠游標移動到特定位置,自動化點選,並模擬鍵盤按鍵。
事不宜遲,讓我們開始吧。
入門
由於pynput 模組沒有與Python一起打包,您必須使用pip包管理器手動下載並安裝它。
為此,啟動您的終端並使用以下命令。
pip install pynput
庫成功下載並安裝後,您就可以將其各個模組匯入到您的Python指令碼中了。
由於我們將匯入鍵盤和滑鼠的各種模組,我們稍後將討論匯入語句。
控制滑鼠
為了使用Python控制和模擬滑鼠,您必須從pynput庫匯入滑鼠模組。由於我們將模擬點選和移動,我們將與模組一起匯入它們。
from pynput.mouse import Button, Controller
首先,我們將使用Controller()方法來移動螢幕上的滑鼠。
mouse = Controller()
現在,如果您想將滑鼠移動到螢幕上的任何位置,只需提供其座標。
mouse.position = (50,60)
如果您想檢視滑鼠移動到的位置,可以打印出來。
print('Current mouse position −> {0}'.format(mouse.position))如果您想相對於滑鼠當前位置移動滑鼠,請使用move函式。
mouse.move(30,15)
如果您想模擬按鈕按下,
mouse.press(Button.left) mouse.release(Button.left) mouse.press(Button.right) mouse.release(Button.right)
對於雙擊,請使用
mouse.click(Button.left, 2)
您甚至可以使用pynput模擬滾動,
mouse.scroll(0,2)
這將向下滾動兩步,x座標用於從左到右導航滾動,y座標用於從上到下。
示例
from pynput.mouse import Button, Controller
mouse = Controller()
mouse.position = (50,60)
print('Current mouse position −> {0}'.format(mouse.position))
mouse.move(30,15)
mouse.press(Button.left)
mouse.release(Button.left)
mouse.press(Button.right)
mouse.release(Button.right)
mouse.click(Button.left, 2)
mouse.scroll(0,2)使用上述方法,您可以使用基本的座標幾何在畫圖軟體上模擬繪製形狀。
控制鍵盤
首先,我們匯入所需的模組和函式。在pynput庫中的鍵盤模組中,我們將使用Key和Controller函式。
From pynput.keyboard import Key, Controller
我們將使用Controller方法來控制鍵盤並模擬按鍵。
keyboard = Controller()
現在,要模擬按鍵,我們有press和release方法
keyboard.press('a')
keyboard.release('a')這適用於所有字母,包括大寫字母。對於大寫字母,只需使用“A”代替“a”。
您還可以模擬其他按鍵,例如ctrl、alt、空格鍵等。
keyboard.press(Key.space) keyboard.release(Key.space) keyboard.press(Key.ctrl) keyboard.release(Key.ctrl)
如果您想一次模擬輸入句子或單詞,可以使用type函式。
keyboard.type('Hello World!!')基本上這就是您如何在Python上控制或模擬鍵盤裝置的方法。
示例
from pynput.keyboard import Key, Controller
keyboard = Controller()
keyboard.press('a')
keyboard.release('a')
keyboard.press(Key.space)
keyboard.release(Key.space)
keyboard.press(Key.ctrl)
keyboard.release(Key.ctrl)
keyboard.type('Hello World!!')結論
您現在知道如何使用Python的pynput庫來模擬鍵盤和滑鼠輸入裝置。
使用它,您可以構建執行點選器遊戲中點選操作的自動化機器人,構建一個垃圾郵件機器人,一次傳送各種不同形式的訊息。 您可以使用此方法構建任何型別的自動化工具,其應用非常廣泛。
SpamBot小型專案 − https://github.com/SVijayB/Spam-botz
如果您想了解更多關於pynput的資訊並探索其各種其他功能,您可以檢視其官方文件:
https://pynput.readthedocs.io/en/latest/index.html.
資料結構
網路
關係資料庫管理系統(RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP