【问题标题】:Python3 Keylogger for MacOs : Script not working适用于 MacOs 的 Python3 键盘记录器:脚本不起作用
【发布时间】:2020-07-19 12:16:24
【问题描述】:

我正在尝试在 MacOs 上使用 Python3 运行一个简单的键盘记录器。下面是脚本。

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 运行脚本时,按下某些键时什么也没有发生。我没有被显示在控制台上按下了哪些键,并且文件也是空的。

我无法理解问题所在。我猜这与 MacOs 限制完全访问键盘有关。但我不确定。

请有人帮我解决这个问题。

【问题讨论】:

  • 为什么要使用 sudo 运行键盘记录器?
  • 因为当我通常使用 python3 filename.py 执行此操作时,我遇到了同样的问题。所以我想可能是由于管理员限制,让我们用 sudo 试试。但是没用。
  • this 有帮助吗?
  • 是的,试过了。有用。所以,我需要添加终端和我的 IDE 才能工作。感谢您的帮助:)
  • 不客气。这个问题被推荐为相对的:)

标签: python-3.x macos keylogger pynput


【解决方案1】:

我在相关问题中找到了解决方案。出于安全原因,MacOS 默认不允许键盘记录。 所以需要手动开启:

  1. 设置 -> 安全和隐私
  2. 点击隐私标签
  3. 单击 + 并按住 CMD + SHIFT + 。 (以便您可以看到隐藏的文件/文件夹)

  4. 导航到 /usr/local/bin 或安装了 Python 的任何位置

  5. 点击确定。

引用自this answer

【讨论】:

    猜你喜欢
    • 2018-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-23
    • 2015-09-15
    • 2022-07-26
    • 1970-01-01
    • 2013-09-27
    相关资源
    最近更新 更多