【问题标题】:Python - Emulate keypressing at the low levelPython - 在低级别模拟按键
【发布时间】:2017-08-10 15:33:28
【问题描述】:

据我所知,大多数问题都在于发送按键

我需要能够在较低级别上模拟按下和抬起键,以便程序实际上认为这些键正在被按下

伪代码

Press("A")
#do something else
Unpress("A")

有人知道这是否可能吗?即使它需要的不仅仅是原生 Python,我也愿意尝试,只要该解决方案在模拟密钥和实际密钥之间没有大量延迟

【问题讨论】:

  • Python simulate keydown的可能重复
  • 据我所知,它适用于按下,但是(如果我错了,请纠正我)从那里我不知道如何按住?
  • 嗯,keydown 表示键按下直到有 keyup。
  • 我可以看到SendInput(Keyboard(KEY_A, KEYEVENTF_KEYUP)) 是可能的,但我找不到任何KEYDOWN 等效项
  • 我在这里猜测KEYEVENTF_KEYUP 应该与KEYEVENTF_KEYDOWN 类似,但您必须自己检查。

标签: python keyboard low-level


【解决方案1】:
from pynput.keyboard import Key, Controller

keyboard = Controller()

# Type a lower case A; this will work even if no key on the
# physical keyboard is labelled 'A'
keyboard.press('a')
keyboard.release('a')

您可以在这里找到更多信息:https://pypi.python.org/pypi/pynput

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-09-25
    • 2012-07-20
    • 1970-01-01
    • 2015-04-13
    • 2010-10-09
    • 2012-01-30
    • 1970-01-01
    • 2012-12-14
    相关资源
    最近更新 更多