如何解决pynput.keyboard 侦听器在 macOS 上失败
我只是想制作一个简单的键盘监听器,打印我按下的任何键(pynput.keyboard.Listener)。这是我的代码:
from pynput.keyboard import Listener
def on_press(k):
print(k)
with Listener(on_press=on_press) as lis:
lis.join()
但是,当我运行它时,它什么也不做。所以我按 CTRL+C 并显示这些错误:
Traceback (most recent call last):
File "/Users/me/Desktop/py/KeyLogger/keylogger.py",line 8,in <module>
lis.join()
File "/usr/local/lib/python3.7/site-packages/pynput/_util/__init__.py",line 252,in join
super(AbstractListener,self).join(*args)
File "/usr/local/Cellar/python/3.7.5/Frameworks/Python.framework/Versions/3.7/lib/python3.7/threading.py",line 1044,in join
self._wait_for_tstate_lock()
File "/usr/local/Cellar/python/3.7.5/Frameworks/Python.framework/Versions/3.7/lib/python3.7/threading.py",line 1060,in _wait_for_tstate_lock
elif lock.acquire(block,timeout):
KeyboardInterrupt
这里使用 anaconda/Python3.8 而不是 Python3.7:
Traceback (most recent call last):
File "/Users/me/Desktop/py/KeyLogger/keylogger.py",in <module>
lis.join()
File "/Users/me/opt/anaconda3/lib/python3.8/site-packages/pynput/_util/__init__.py",self).join(*args)
File "/Users/me/opt/anaconda3/lib/python3.8/threading.py",line 1011,in join
self._wait_for_tstate_lock()
File "/Users/me/opt/anaconda3/lib/python3.8/threading.py",line 1027,timeout):
KeyboardInterrupt
似乎错误是当我告诉侦听器开始时。我一直在寻找类似的问题(主要是线程和 join() 问题),但我还没有找到我的问题的答案。 ¿会不会是 pynput 问题?
谢谢。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。