Единственный вид странных персонажей в нем. В (довольно вероятном) случае, когда вы найдете там символы вне обычного диапазона ascii, которые не закодированы в том же «странном» формате, что и текст в исходном вопросе, я бы посоветовал выяснить, почему поступают данные в таком сломанном формате, во-первых, вместо того, чтобы пытаться восстановить исходное значение из уже сломанного текста.
я есть следующий текст в файле JSON:
"\u00d7\u0090\u00d7\u0097\u00d7\u0095\u00d7\u0096\u00d7\u00aa
\u00d7\u00a4\u00d7\u0095\u00d7\u009c\u00d7\u0092"
который представляет собой текст «אחוזת פולג» на иврите.
Независимо от того, какую кодировку / декодирование я использую, мне кажется, что с Python 3 это не так.
если, например, плохо попробую:
text = "\u00d7\u0090\u00d7\u0097\u00d7\u0095\u00d7\u0096\u00d7\u00aa
\u00d7\u00a4\u00d7\u0095\u00d7\u009c\u00d7\u0092".encode('unicode-escape')
print(text)
я получаю этот текст:
b'\\xd7\\x90\\xd7\\x97\\xd7\\x95\\xd7\\x96\\xd7\\xaa \\xd7\\xa4\\xd7\\x95\\xd7\\x9c\\xd7\\x92'
который в байт-кодепочти правильный текст, если я смог удалитьтолько одна обратная косая черта и повернуть
b'\\xd7\\x90\\xd7\\x97\\xd7\\x95\\xd7\\x96\\xd7\\xaa \\xd7\\xa4\\xd7\\x95\\xd7\\x9c\\xd7\\x92'
в
text = b'\xd7\x90\xd7\x97\xd7\x95\xd7\x96\xd7\xaa \xd7\xa4\xd7\x95\xd7\x9c\xd7\x92'
(обратите внимание, как я изменил двойную косую черту на одну)
text.decode('utf-8')
даст правильный текст на иврите.
но я изо всех сил пытаюсь сделать это и не могу создать кусок кода, который будет делать это для меня (а не вручную, как я только что показал ...)
любая помощь высоко ценится ...