问题描述
我只是想制作一个简单的键盘监听器,打印我按下的任何键(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 (将#修改为@)