У меня есть строка (полученная из запроса HTML веб-страницы), в которой есть специальные символы:
'Dimarts, 10 Mar\\xe7 2020'
Если я распечатаю эту строку, она правильно экранируется от двойного backsla sh и печатает только одно:
Dimarts, 10 Mar\xe7 2020
Но я хотел бы напечатать реальный символ, то есть символ 92 = ç
Dimarts, 10 Març 2020
Я пытался заменить двойную обратную косую черту sh с одним или даже без выхода с библиотекой html, без удачи. Если я вручную устанавливаю новую переменную с текстом, а затем печатаю ее, она работает:
print('Original: ', repr(text))
print('Direct : ', text)
print('Option 1: ', text.replace('\\\\', '\\'))
print('Option 2: ', text.replace(r'\\', '\\'))
print('Option 3: ', text.replace(r'\\', chr(92)))
print('Option 4: ', text.replace('\\', chr(92)))
print('Option 5: ', html.unescape(text))
text = 'Dimarts, 10 Mar\xe7 2020'
print('Manual: ', text)
И результат никогда не будет таким, как ожидалось:
Original: 'Dimarts, 10 Mar\\xe7 2020'
Direct : Dimarts, 10 Mar\xe7 2020
Option 1: Dimarts, 10 Mar\xe7 2020
Option 2: Dimarts, 10 Mar\xe7 2020
Option 3: Dimarts, 10 Mar\xe7 2020
Option 4: Dimarts, 10 Mar\xe7 2020
Option 5: Dimarts, 10 Mar\xe7 2020
Manual: Dimarts, 10 Març 2020
Есть ли способ скажите Python, чтобы правильно обрабатывать специальные символы?