如何在Python中控制鼠标(详细代码实现教程)

【如何在Python中控制鼠标(详细代码实现教程)】本文为你介绍用使用python控制电脑鼠标。挂钩事件、注册热键、模拟鼠标移动和点击等等。
如何在Python中控制鼠标?在代码中控制计算机鼠标是一项方便的任务,因为它有助于桌面自动化、制作有用的桌面代理等。在本教程中,你将学习如何在 Python 中控制鼠标。
Python控制鼠标示例介绍:我们将使用方便的mouse库,让我们安装它:

$ pip3 install mouse

该模块帮助我们完全控制鼠标,例如挂钩全局事件、注册热键、模拟鼠标移动和点击等等!
Python如何控制鼠标?首先,让我们看看如何模拟鼠标点击:
import mouse# left click mouse.click('left')# right click mouse.click('right')# middle click mouse.click('middle')

注意:建议在 Python 交互式 shell(例如 Jupyter notebook 或IPython )中单独运行这些语句。
如何在Python中控制鼠标?click()方法正如它的名字所暗示的那样,它发送一个带有给定按钮的点击,试试看!
其次,还可以获取鼠标的当前位置:
In [ 22]: mouse.get_position() Out[ 22]: (646, 407)

你可以用鼠标拖动一些东西:
# drag from (0, 0) to (100, 100) relatively with a duration of 0.1s mouse.drag(0, 0, 100, 100, absolute=False, duration=0.1)

Python控制鼠标示例解析 - 使用(0, 0)起始位置将absolute设置为False意味着它从当前位置拖动到更远的 100(在 x 和 y 中)。
在要拖到桌面上的文件上进行测试!
接下来,你还可以确定按钮是否被按下:
# whether the right button is clicked In [ 25]: mouse.is_pressed("right") Out[ 25]: False

你还可以移动鼠标:
# move 100 right & 100 down mouse.move(100, 100, absolute=False, duration=0.2)

这将在 0.2 秒的持续时间内相对移动鼠标。
你还可以进行在事件发生时调用的回调,例如鼠标单击:
# make a listener when left button is clicked mouse.on_click(lambda: print("Left Button clicked.")) # make a listener when right button is clicked mouse.on_right_click(lambda: print("Right Button clicked."))

Python如何控制鼠标?上面的代码会在鼠标按钮被点击时进行简单的回调,这里我们只使用 lambda 函数进行演示,你可以随意使用任何函数来做任何你想做的事。
如果要删除监听器,可以调用unhook_all()删除所有监听器:
# remove the listeners when you want mouse.unhook_all()

你还可以控制鼠标滚轮,让我们向下滚动:
# scroll down mouse.wheel(-1)

向上滚动:
# scroll up mouse.wheel(1)

Python控制鼠标示例 - 最后,你可以记录所有鼠标事件,然后重放它们:
# record until you click right events = mouse.record()

如何在Python中控制鼠标?这将记录所有鼠标事件,直到按下右键。然后它返回一个记录的事件列表,让我们重放它们:
# replay these events mouse.play(events[ :-1])

我设置events[:-1]而不是所有事件的原因是我不想播放右键单击。
以下是你可以使用此模块实现的一些想法:
  • 让强化学习代理玩电子游戏。
  • 自动化无聊的桌面内容。
  • 多得多!
你可以将其与在 Python 中控制键盘相结合,让我们看看你可以用这些来构建什么!

    推荐阅读