如何使用Python中的pynput库控制鼠标和键盘

如何使用Python中的pynput库控制鼠标和键盘

介绍

pynput 库允许您控制和监视/监听输入设备,如键盘和鼠标。

pynput.mouse 允许您控制和监视鼠标,而 pynput.keyboard 允许您控制和监视键盘。

在本文中,我们将把光标移动到特定的位置,自动点击并从键盘模拟按键操作。

话不多说,让我们开始吧。

入门指南

由于 pynput 模块不随Python一起打包,因此您需要使用pip包管理器手动下载和安装它。

要做到这一点,请打开终端并使用以下命令。

pip install pynput
Python

安装成功后,您可以将其各种模块导入Python脚本。

由于我们将为键盘和鼠标导入各种模块,因此我们稍后将讨论导入语句。

控制鼠标

要使用Python控制和模拟鼠标操作,必须从pynput库中导入鼠标模块。由于我们还要模拟点击和移动操作,因此我们会一起导入它们。

from pynput.mouse import Button, Controller
Python

首先,我们将使用Controller()方法将鼠标移动到屏幕上的任何位置。

mouse = Controller()
Python

现在,如果要将鼠标移动到屏幕上的任何位置,只需提供其坐标。

mouse.position = (50,60)
Python

如果您想查看鼠标移动到的位置,可以将其打印出来。

print('Current mouse position −> {0}'.format(mouse.position))
Python

如果您想相对于当前位置移动鼠标,可以使用移动函数。

mouse.move(30,15)
Python

如果要模拟鼠标点击,

mouse.press(Button.left)
mouse.release(Button.left)
mouse.press(Button.right)
mouse.release(Button.right)
Python

要进行双击,请使用:

mouse.click(Button.left, 2)
Python

您甚至可以使用pynput模拟滚动操作,

mouse.scroll(0,2)
Python

这将向下滚动两步,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)
Python

使用上述方法,您可以使用基本坐标几何在画图软件上模拟绘制形状。

控制键盘

首先,我们导入所需的模块和功能。在pynput库的键盘模块中,我们将使用Key和Controller函数。

From pynput.keyboard import Key, Controller
Python

我们将使用Controller方法来控制键盘并模拟按键操作。

keyboard = Controller()
Python

现在,要模拟按键操作,我们有press和release方法。

keyboard.press('a')
keyboard.release('a')
Python

这适用于所有字母,包括大写字母。对于大写字母,只需使用“A”而不是“a”。

您还可以模拟其他按键,例如ctrl,alt,space等。

keyboard.press(Key.space)
keyboard.release(Key.space)
keyboard.press(Key.ctrl)
keyboard.release(Key.ctrl)
Python

如果你想一次性模拟输入句子或单词,可以使用 type 函数。

keyboard.type('Hello World!!')
Python

以上就是如何在 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

结论

现在你已经知道如何使用 Python 的 pynput 库模拟键盘和鼠标输入设备。

通过这种方法,你可以构建自动化机器人,执行点击游戏中的点击操作,构建一个垃圾邮件机器人,一次发送各种形式的消息。应用非常广泛,你可以使用这种方法构建任何类型的自动化工具。

SpamBot 小项目 – https://github.com/SVijayB/Spam-botz

如果你想了解更多关于 pynput 并探索其各种其他功能,可以查看其官方文档 – https://pynput.readthedocs.io/en/latest/index.html

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册