KeyLogger
KeyLogger
Легкий кроссплатформенный кейлоггер написанный на Python. Программа записывает нажатия клавиатуры и сохраняет их в текстовые файлы в реальном времени. Работает на Linux любых дистрибутивов и Windows 10/11.
ОСНОВНЫЕ ВОЗМОЖНОСТИ
Программа сохраняет каждое нажатие клавиши мгновенно на диск. Файлы создаются автоматически с нумерацией если предыдущий лог уже существует. Поддерживается полная запись всех языков включая русский украинский китайский арабский и другие благодаря кодировке UTF-8. Специальные клавиши обрабатываются особым образом - пробел энтер и таб записываются как реальные символы а остальные вроде бэкспейс и делит пишутся в квадратных скобках. Программа завершается корректно при нажатии клавиши ESC.
ЛОГИКА РАБОТЫ
При первом запуске создается файл txt.txt. Если такой файл уже есть создается txt1.txt и так далее. Нумерация продолжается автоматически. Буквы цифры и символы записываются как есть. Пробел энтер и таб записываются как настоящие символы. Бэкспейс и делит пишутся как [BS] и [DEL]. Служебные клавиши Shift Ctrl и Alt не записываются. Функциональные клавиши пишутся в квадратных скобках например [f1] или [up]. Клавиша ESC останавливает программу.
УСТАНОВКА И ИСПОЛЬЗОВАНИЕ
Клонируйте репозиторий и перейдите в папку проекта. Создайте виртуальное окружение командой python -m venv venv. На Windows активируйте его через venv\Scripts\activate а на Linux через source venv/bin/activate. Установите зависимости командой pip install -r requirements.txt. Запустите программу командой python main.py. На Linux может потребоваться запуск с правами администратора через sudo.
СТРУКТУРА ПРОЕКТА
Файл main.py является точкой входа и содержит слушатель клавиатуры. В logger.py реализована логика управления файлами и записи данных. Файл config.py содержит настройки программы включая имя файла и кодировку. В requirements.txt перечислены зависимости.
РЕШЕНИЕ ПРОБЛЕМ
Если при запуске с sudo появляется ошибка о модуле pynput запускайте с полным путем к python из виртуального окружения или установите pynput в системный Python. Если на Linux клавиши не записываются добавьте пользователя в группу input командой sudo usermod -aG input $USER. Если появляется нечитаемый текст убедитесь что в config.py установлено ENCODING utf-8.
ТЕХНИЧЕСКИЕ ДЕТАЛИ
Проект требует Python 3.8 или выше и библиотеку pynput. Проект распространяется под лицензией GNU General Public License v3.0. Создан для образовательных целей.
https://github.com/fedyaqq34356/KeyLogger.git
Легкий кроссплатформенный кейлоггер написанный на Python. Программа записывает нажатия клавиатуры и сохраняет их в текстовые файлы в реальном времени. Работает на Linux любых дистрибутивов и Windows 10/11.
ОСНОВНЫЕ ВОЗМОЖНОСТИ
Программа сохраняет каждое нажатие клавиши мгновенно на диск. Файлы создаются автоматически с нумерацией если предыдущий лог уже существует. Поддерживается полная запись всех языков включая русский украинский китайский арабский и другие благодаря кодировке UTF-8. Специальные клавиши обрабатываются особым образом - пробел энтер и таб записываются как реальные символы а остальные вроде бэкспейс и делит пишутся в квадратных скобках. Программа завершается корректно при нажатии клавиши ESC.
ЛОГИКА РАБОТЫ
При первом запуске создается файл txt.txt. Если такой файл уже есть создается txt1.txt и так далее. Нумерация продолжается автоматически. Буквы цифры и символы записываются как есть. Пробел энтер и таб записываются как настоящие символы. Бэкспейс и делит пишутся как [BS] и [DEL]. Служебные клавиши Shift Ctrl и Alt не записываются. Функциональные клавиши пишутся в квадратных скобках например [f1] или [up]. Клавиша ESC останавливает программу.
УСТАНОВКА И ИСПОЛЬЗОВАНИЕ
Клонируйте репозиторий и перейдите в папку проекта. Создайте виртуальное окружение командой python -m venv venv. На Windows активируйте его через venv\Scripts\activate а на Linux через source venv/bin/activate. Установите зависимости командой pip install -r requirements.txt. Запустите программу командой python main.py. На Linux может потребоваться запуск с правами администратора через sudo.
СТРУКТУРА ПРОЕКТА
Файл main.py является точкой входа и содержит слушатель клавиатуры. В logger.py реализована логика управления файлами и записи данных. Файл config.py содержит настройки программы включая имя файла и кодировку. В requirements.txt перечислены зависимости.
РЕШЕНИЕ ПРОБЛЕМ
Если при запуске с sudo появляется ошибка о модуле pynput запускайте с полным путем к python из виртуального окружения или установите pynput в системный Python. Если на Linux клавиши не записываются добавьте пользователя в группу input командой sudo usermod -aG input $USER. Если появляется нечитаемый текст убедитесь что в config.py установлено ENCODING utf-8.
ТЕХНИЧЕСКИЕ ДЕТАЛИ
Проект требует Python 3.8 или выше и библиотеку pynput. Проект распространяется под лицензией GNU General Public License v3.0. Создан для образовательных целей.
https://github.com/fedyaqq34356/KeyLogger.git