首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >执行keylogger.py时,在计数计时器中按下每个键时,连续记录动量

执行keylogger.py时,在计数计时器中按下每个键时,连续记录动量
EN

Stack Overflow用户
提问于 2020-01-06 17:55:39
回答 1查看 177关注 0票数 0

下面有下面的代码文件keylogger.py,用于检测按下的特定键并保存到log.txt文件中。我想在这个python代码中添加一个在代码开始运行时启动的计时器,我还希望代码的这一部分能够保存keys从文件开始按下的确切时刻,并将这些信息保存在log.txt文件或另一个单独的文件中(我认为需要使用with openf.write )。我在How to create a timer on pythonhttps://pythonhow.com/measure-execution-time-python-code/中找到了一些计时思想。

所以我的log.txt会像一样

log.py

代码语言:javascript
复制
RLLR     #this line would already be produced by keylogger.py

R: 0.2s
L:0.24s
L:1.34s
R:2.5s

keylogger.py

代码语言:javascript
复制
from pynput.keyboard import Listener, Key

#set log file location
logFile = "/home/diego/log.txt"



def writeLog(key):
    translate_keys = {
        Key.right: "R",
        Key.left: "L",
    }
    if key in translate_keys:
        with open(logFile, "a") as f:
            f.write(translate_keys[key])

with Listener(on_press=writeLog) as l:
    l.join()
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-01-06 18:38:26

使用单独的文件将是最简单的解决方案,我认为:

代码语言:javascript
复制
from pynput.keyboard import Listener, Key
import time

#set log file location for keys pressed
keysLogFile = "/home/diego/keys_log.txt"

#set log file location for keys timestamps
timestampsLogFile = "/home/diego/ts_log.txt"

#store start timestamp
startTime = time.time()


def writeLog(key):
    translate_keys = {
        Key.right: "R",
        Key.left: "L",
    }
    if key in translate_keys:
        currentTime = time.time() - startTime
        with open(keysLogFile, "a") as f:
            f.write(translate_keys[key])
        with open(timestampsLogFile, "a") as f:
            f.write(translate_keys[key] + ": " + str(currentTime) + "s\n")

with Listener(on_press=writeLog) as l:
    l.join()

这会给你两个单独的文件:

keys_log.txt

代码语言:javascript
复制
RLLR

ts_log.txt

代码语言:javascript
复制
R: 0.2s
L: 0.24s
L: 1.34s
R: 2.5s
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59616752

复制
相关文章

相似问题

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