使用Python的Mac键盘侦听器



我尝试了键盘侦听器的所有代码。我遇到了一篇文章,该帖子说Mac会阻止系统来收听键盘按下。我正在使用Python。我还使用pynput作为库。如何让Mac收听我的钥匙按压?它只会听" Shift"," Alt"one_answers"命令"等特殊键。

这不是pynput中的错误,而是OS X的安全功能。您必须运行Python作为根。

sudo python3 app.py

如果您不想继续使用sudo,则永久修复是进入安全性和隐私首选项,并将python添加到"可访问性"选项卡中。

来自文档:

使用pynput.keyboard.listener这样:

from pynput import keyboard
def on_press(key):
    try:
        print('alphanumeric key {0} pressed'.format(
            key.char))
    except AttributeError:
        print('special key {0} pressed'.format(
            key))
def on_release(key):
    print('{0} released'.format(
        key))
    if key == keyboard.Key.esc:
        # Stop listener
        return False
# Collect events until released
with keyboard.Listener(
        on_press=on_press,
        on_release=on_release) as listener:
    listener.join()

键盘侦听器是螺纹。线程,所有回调都将是 从线程调用。

致电pynput.kekeboard.listener.stop从任何地方开始,提高stopexception 或从回调中返回false以停止听众。

传递给回调的密钥参数是pynput.keyboard.key,for 特殊键,pynput.keyboard.keycode,用于普通字母数字键, 或者只是未知键。

最新更新