开篇寄语
通过python获取鼠标监控事件,这个挺有意思的,简单来说就是利用一个python的库,然后稍微制定一下规则,实施起来效果不错,非常适合初学者,而且该库也非常适合学习,学习其如何编写的。
内容详情
安装所需库
我们将使用pynput模块来侦听鼠标事件。要安装此模块,请在cmd中执行pip install pynput。观察输出以确保没有发生任何错误;它会告诉您何时模块已成功安装。
如何调出命令窗口呢?只需要按“Win + R”,然后输入cmd点击回车即可。
打造脚本
创建一个新的python文件,并将其保存为.py文件扩展名。您首先要从pynput.mouse导入Listener。
from pynput.mouse import Listener
通过在with语句中创建实例并使用其.join()方法将其连接到主线程来设置侦听器。
with Listener() as listener: listener.join()
创建三种方法; on_move,on_click和on_scroll的参数如下所示。
def on_move(x, y): pass def on_click(x, y, button, pressed): pass def on_scroll(x, y, dx, dy): pass
将这些方法链接到以函数名称作为args的侦听器实例;我已将其命名为侦听器类中定义的方法。现在,当一个动作发生时,将运行这些方法之一。
with Listener(on_move=on_move, on_click=on_click, on_scroll=on_scroll) as listener:
为确保它们正在运行,请向每个方法添加一些打印语句。保存并运行脚本。左右移动鼠标,您将看到如下所示的输出。
def on_move(x, y): print ("Mouse moved") def on_click(x, y, button, pressed): print ("Mouse clicked") def on_scroll(x, y, dx, dy): print ("Mouse scrolled")
完成代码如下:
from pynput.mouse import Listener def on_move(x, y): print ("Mouse moved") def on_click(x, y, button, pressed): print ("Mouse clicked") def on_scroll(x, y, dx, dy): print ("Mouse scrolled") with Listener(on_move=on_move, on_click=on_click, on_scroll=on_scroll) as listener: listener.join()
点击运行后,输出结果如下:
想要获取鼠标移动的坐标数据,可以这样撰写:
def on_move(x, y): print ("Mouse moved to ({0}, {1})".format(x, y)) def on_click(x, y, button, pressed): if pressed: print ('Mouse clicked at ({0}, {1}) with {2}'.format(x, y, button)) def on_scroll(x, y, dx, dy): print ('Mouse scrolled at ({0}, {1})({2}, {3})'.format(x, y, dx, dy))
输出结果如下图所示:
温馨提示
该库还有更多技法,可以参看它的指导说明,仓库和教程地址如下:
- 我的微信
- 微信扫一扫加好友
- 我的微信公众号
- 扫描关注公众号