在 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