Кейлоггер
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