Этот вопрос закрыт для ответов, так как повторяет вопрос Почему вместо кириллицы знаки вопросов?
@TemaKam

Как обрабатывать неподходящую кодировку для БД?

встречаются символы смайлики похоже отсюда https://apps.timwhitlock.info/emoji/tables/unicode
и когда пытаюсь их добавить в бд (когда они в составе какой-то строки), то получаю ошибку
1366, "Incorrect string value: '\\xF0\\x9F\\x8C\\x88\\xD0\\xA1...'

например
b'\xF0\x9F\x92\x94'
b'\xF0\x9F\x8C\x88'


в консоли они не отображаются тоже
KFRWJ74.jpg
кодировка БД и таблицы - DEFAULT CHARSET=utf8
как можно обработать все эти случаи вместе? просто нужно какое-то условие, не пойму какое
что эти символы объединяет и как вычислить, есть ли они в строке?
а то всю таблицу кодов не хочется добавлять, чтобы проверять типо такого:
if b'\xF0\x9F\x92\x94' in ReasonBlock.encode('utf-8') or b'\xF0\x9F\x8C\x88' in ReasonBlock.encode('utf-8'):
            ReasonBlock = ''
  • Вопрос задан
  • 152 просмотра
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
\xF0\x9F\x8C\x88 - это символ радуги ???? (\u1F308). Для его хранения в MySQL нужно поле с типом utf8mb4. Или же можно удалять из строки символы с кодами больше /uFFFF.
Ответ написан
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы