在 Python 中模擬鍵盤輸入

Vaibhav Vaibhav 2023年1月30日
  1. 在 Python 中使用 keyboard 庫模擬鍵盤
  2. 在 Python 中使用 PyAutoGUI 庫模擬鍵盤
在 Python 中模擬鍵盤輸入

Python 幾乎可以用於任何事情。使用 Python,我們可以開發 Web 應用程式的後端、移動應用程式的後端以及使用免費和開源框架(例如 DjangoFlask)的 API。

此外,Python 程式還使用諸如 KerasNumPyTensorflowPyTorch 等強大的庫建立高效的機器學習模型,這些庫使用 Matplotlib 繪製各種圖等等。

在本文中,我們將看到 Python 的此類用例。我們將學習如何使用 Python 模擬或控制鍵盤。

我們將討論兩個開源 Python 庫,keyboardPyAutoGUI,讓我們使用 Python 指令碼控制鍵盤。

在 Python 中使用 keyboard 庫模擬鍵盤

keyboard 庫是一個開源庫,用於控制你的鍵盤。

這個庫可以監聽和傳送鍵盤事件,使用熱鍵,支援國際化,並在 mouse 庫的幫助下提供滑鼠支援,我們可以使用 pip install mousepip3 install mouse 下載。

要安裝 keyboard 庫,請使用以下兩個 pip 命令之一。

pip install keyboard
pip3 install keyboard

讓我們瞭解如何使用這個庫來控制鍵盤。有關鍵入一些文字的簡單示例,請參閱以下 Python 程式碼。

import keyboard

keyboard.write("Python is an amazing programming language.")
keyboard.press_and_release("enter")
keyboard.press_and_release("shift+p")
keyboard.press_and_release("y")
keyboard.press_and_release("t")
keyboard.press_and_release("h")
keyboard.press_and_release("o")
keyboard.press_and_release("n")

輸出:

Python is an amazing programming language.
Python

python 使用鍵盤庫模擬鍵盤輸入

在執行上述程式碼之前,請記下你的文字游標或插入符號。輸出框中上面的文字將自動在那裡輸入。

write() 函式將輸入作為引數傳遞給此函式的任何字串。此函式將人工鍵盤事件傳送到作業系統,然後在插入符號處進一步鍵入。

如果鍵盤上沒有任何字元可用,則鍵入明確的 Unicode 字元。press_and_release() 函式傳送作業系統事件以執行熱鍵並鍵入作為引數傳遞的字元。

要了解有關此庫的更多資訊,請參閱其文件此處

在 Python 中使用 PyAutoGUI 庫模擬鍵盤

PyAutoGUI 庫讓我們可以編寫 Python 指令碼來控制鍵盤和滑鼠。

該庫可以移動滑鼠游標並單擊視窗和應用程式,傳送鍵事件以鍵入字元並執行熱鍵、截圖、移動、調整大小、最小化、最大化和定位螢幕上的應用程式,以及顯示警報訊息等。

要安裝此庫,請使用以下任一命令。

pip install pyautogui
pip3 install pyautogui

我們可以將 PyAutoGUI 庫用於我們的用例。請參閱以下程式碼。

import pyautogui

pyautogui.write("Python is an amazing programming language.")

輸出:

Python is an amazing programming language.

python 使用 PyAutoGUI 庫模擬鍵盤輸入

正如我們所看到的,write() 函式將字串的字元型別作為插入符號處的引數傳遞。此功能只能按字母和數字等單字元鍵。

這意味著我們不能按 ShiftCtrlCommandAltOption< 等鍵/kbd>、F1F3。我們可以使用 keyDown()keyUp() 方法來按下這些鍵。

keyDown() 方法按下一個鍵並一直按住它。keyUp() 方法釋放一個持有的鍵。

有關示例,請參閱以下 Python 程式碼。不要忘記記下文字游標或插入符號的位置。

import pyautogui

pyautogui.keyDown("shift")
pyautogui.press("a")
pyautogui.press("b")
pyautogui.press("c")
pyautogui.keyUp("shift")
pyautogui.press("x")
pyautogui.press("y")
pyautogui.press("z")
pyautogui.keyDown("shift")
pyautogui.press("a")
pyautogui.keyUp("shift")
pyautogui.keyDown("shift")
pyautogui.press("b")
pyautogui.keyUp("shift")
pyautogui.keyDown("shift")
pyautogui.press("c")
pyautogui.keyUp("shift")

輸出:

ABCxyzABC

python 使用 PyAutoGUI 庫模擬鍵盤輸入 - 2

要按下 Shift+F 等鍵,我們還可以使用 press() 方法。此函式將按下作為字串傳遞的任何鍵。

在幕後,這個函式只是 keyDown()keyUp() 方法的包裝。

要了解有關此庫的更多資訊,請參閱文件。

作者: Vaibhav Vaibhav
Vaibhav Vaibhav avatar Vaibhav Vaibhav avatar

Vaibhav is an artificial intelligence and cloud computing stan. He likes to build end-to-end full-stack web and mobile applications. Besides computer science and technology, he loves playing cricket and badminton, going on bike rides, and doodling.

相關文章 - Python Input