如何在linux上使用python在后台捕获鼠标事件和按键事件

2024-01-25

我想制作一个可以在后台运行但在发生鼠标事件或按键事件时打印文本的 python 脚本。是否有任何库/内置功能可以实现此目的?或者我可以调用任何系统命令来获取此信息?成为 root 没有问题。


我想,您可能会使用 python 绑定来执行 evdev:http://packages.python.org/evdev/index.html http://packages.python.org/evdev/index.html。在教程中,他们给出了键盘示例,但鼠标事件应该类似:

>>> from evdev import InputDevice, categorize, ecodes
>>> from select import select
>>> dev = InputDevice('/dev/input/event1')

>>> print(dev)
device /dev/input/event1, name "Dell Dell USB Keyboard", phys "usb-0000:00:12.1-2/input0"

>>> while True:
...    r,w,x = select([dev], [], [])
...    for event in dev.read():
...        if event.type == ecodes.EV_KEY:
...            print(categorize(event))
... # hitting a and holding space
key event at 1337016188.396030, 30 (KEY_A), down
key event at 1337016188.492033, 30 (KEY_A), up
key event at 1337016189.772129, 57 (KEY_SPACE), down
key event at 1337016190.275396, 57 (KEY_SPACE), hold
key event at 1337016190.284160, 57 (KEY_SPACE), up
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在linux上使用python在后台捕获鼠标事件和按键事件 的相关文章

随机推荐