如何在Python中解码转义的Unicode JavaScript代码?

5 投票
3 回答
5795 浏览
提问于 2025-04-18 18:15

我有这样一个字符串:

V posledn\u00edch m\u011bs\u00edc\u00edch se bezpe\u010dnostn\u00ed situace v Libyi zna\u010dn\u011b zhor\u0161ila, o \u010dem\u017e sv\u011bd\u010d\u00ed i ned\u00e1vn\u00e9 n\u00e1hl\u00e9 opu\u0161t\u011bn\u00ed zem\u011b nejen \u010desk\u00fdmi diplomaty. Libyi hroz\u00ed nekontrolovan\u00fd rozpad a nekone\u010d

它应该显示为 "V posledních měsících se ...",其中 \u00ed 代表 í,\u011b 代表 ě。

你知道怎么在 Python 中解码这个吗?这是我在 Python 中解析的 JavaScript 代码。我可以自己写一个临时的解决方案,因为被转义的字符不多(捷克语中大约只有十二个带重音的字符),但这样看起来不太好。

3 个回答

0

我遇到过类似的问题,解决方法是:

unicodedata.normalize('NFD', my_string.decode('unicode-escape')).encode('ascii','ignore')

1

如果这是JavaScript代码,那可能其实是JSON格式的,你可以用json.loads来解码它。

11

'unicode-escape' 编解码器来解码它。如果 x 是你的字符串,那么你可以这样做:x.decode('unicode-escape')

撰写回答