首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用pynput keylogger监听特定的按键?

使用pynput keylogger监听特定的按键?
EN

Stack Overflow用户
提问于 2020-08-27 04:47:20
回答 1查看 337关注 0票数 0

我想创建一个按键记录器,它将侦听按键'w‘'a’s‘d’,并且每当它检测到这些键时,都会将它们添加到列表中。到目前为止,我已经有了以下代码

代码语言:javascript
复制
from pynput.keyboard import *
keys_pressed=[]
def on_press(key):
        print(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()

如何检查是否按下了特定的键,并将其添加到keys_pressed列表中?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-08-27 05:18:02

您可以使用KeyCode.from_char(char)从指定的char中获取密钥。因此,KeyCode.from_char('w')将返回w的密钥。

然后你可以将对应于W、A、S和D的键存储在一个列表中,如果按下的键等于这些键中的一个,则在回调中进行检查。

下面是一个示例:

代码语言:javascript
复制
from pynput.keyboard import *

keys = [KeyCode.from_char(c) for c in 'wasd']

def on_press(key):
    if key in keys:
        print(f'good key: {key}')
    else:
        print(f'bad key: {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()
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63605503

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档