如何让 python 检测键盘的击键并根据 Windows 中的输入键发送不同的字符串
Posted
技术标签:
【中文标题】如何让 python 检测键盘的击键并根据 Windows 中的输入键发送不同的字符串【英文标题】:How do I get python to detect keystrokes from the keyboard and send different strings based on the input key(s) in windows 【发布时间】:2012-09-18 23:16:09 【问题描述】:我正在尝试编写一个复制 Autohotkey 功能的脚本,因为它对我来说效果不佳。我需要脚本来检测程序的键盘/鼠标单击输入,并根据按下的原始键发送不同的字符串/击键序列。例如,如果我按下鼠标中键,我想发送三个击键 8,9 和 0 来代替单击。所有这些都是在使用其他一些应用程序时进行的。即火炬之光II。谁能告诉我
-
使用什么来获取全局键盘输入和
如何将击键发送到应用程序?
我会为此使用 Autohotkey,但它的行为非常不可靠,带有随机的不可接受的错误。我正在使用 python 2.7 64bit,windows 7。
【问题讨论】:
你可以试试SendKeys。 Sendkeys 不适用于 Python 2.7 几天前为我工作。 sendkeys-ctypes 这个有效。认为你是这个意思。谢谢。下一阶段是键盘,鼠标事件挂钩。有什么建议吗? 【参考方案1】:我找到了解决方案并完成了脚本。这是我的发现。
1.我从 Pyhook 获得了全局键盘/鼠标输入。在 Python 2.7 amdx64 上安装它可能有点棘手。
2.为了向应用程序发送击键/输入,我使用了与 python 2.7 配合良好的 sendkeys-ctypes
【讨论】:
以上是关于如何让 python 检测键盘的击键并根据 Windows 中的输入键发送不同的字符串的主要内容,如果未能解决你的问题,请参考以下文章