Как получить обычные текст в боте если он присылается в особом шрифте

Бот должен реагировать на текст, но юзер может прислать текст в другом шрифте, например, если юзер пишет боту "????" как мне это обработать и получить простое "when" ?


Ответы (2 шт):

Автор решения: Vladislav Smirnykh

Сделай проверку, и если пользователь отправил шрифт выдавай ошибку)

print('?'.isascii()) -> False
print('w'.isascii()) -> True

Можешь придумать как привести их к стандарту, мб этот кусок кода натолкнет на мысли, но и то только с данным шрифтом.

if str(ord('w')) == str(ord('?'))[:3]:
    print(True)
→ Ссылка
Автор решения: Давид Манжула

Используйте библиотеку Unidecode

import unidecode
input_string = u'????'
output_string = unidecode.unidecode(input_string)
print(input_string)
print(output_string)

Результат:

C:\>py test.py
????
when

Источник

→ Ссылка