gpt4 book ai didi

python - 是否有跨平台的 python 低级 API 来捕获或生成键盘事件?

转载 作者:太空狗 更新时间:2023-10-29 18:01:12 25 4
gpt4 key购买 nike

我正在尝试编写一个跨平台的 python 程序,它将在后台运行,监控所有键盘事件,当它看到一些特定的快捷方式时,它会生成一个或多个自己的键盘事件。例如,将 Ctrl-@ 映射到“my.email@address”可能会很方便,这样每次某些程序询问我的电子邮件地址时,我只需要键入 Ctrl-@。

我知道这样的程序已经存在,我正在重新发明轮子……但我的目标只是了解更多有关低级键盘 API 的信息。此外,这个问题的答案可能对其他程序员有用,例如,如果他们想在不使用 pexpect 的情况下启动需要密码的 SSH 连接。

感谢您的帮助。

注:有a similar question但仅限于windows平台,不需要python。我正在寻找一个跨平台的 python api。还有其他与键盘事件相关的问题,但显然他们对系统范围的键盘事件不感兴趣,只对特定于应用程序的键盘快捷键感兴趣。

编辑:我应该在这里添加一个免责声明:我不想写一个键盘记录器。如果我需要键盘记录器,无论如何我都可以从网上下载一个。 ;-)

最佳答案

没有这样的API。我的解决方案是编写一个辅助模块,它会根据 os.name 的值使用不同的辅助程序。

在 Windows 上,使用 Win32 extensions .

在 Linux 上,事情有点复杂,因为真正的操作系统保护他们的用户免受键盘记录器的侵害[*]。所以在这里,您将需要一个根进程来监视 /dev/input/ 中的 [] 句柄之一。您最好的选择可能是在 /dev/input/by-path/ 下面寻找一个条目,其中包含字符串 "kbd""keyboard"。这在大多数情况下应该有效。

[*]:哎呀,当我启动一个 Hook 到键盘事件的 Python 程序时,即使是我的病毒/木马扫描器也不会提示...

关于python - 是否有跨平台的 python 低级 API 来捕获或生成键盘事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/676713/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com