我正在建立一个聊天,似乎一些奇怪的字符正在悄悄地进入一些信息。。。这是一本词典的节选,里面有一堆信息。在
{'message': '"..." \x85 H.L. Mencken via Midas du Metropole #quotes',...}
注意\x85
,这只是一个例子,\x92
\x91
,其他的也都被表示出来了。据我所知,这些都是不好的引号之类的,可能是有人贴上去的。在
这本词典通览了以下内容。。。在
^{pr2}$这会导致以下错误:
UnicodeDecodeError: 'utf8' codec can't decode byte 0x85 in position 157: invalid start byte
它源自simplejson模块:
s = s.decode('utf-8')
我有点迷路了,我怎么能清理原始输入,这样我就不会遇到这个问题了?在
尝试用以下方法转换字典中的每个值:
在传递给simplejson之前。在
更新:这也起作用:
^{pr2}$一些其他的尝试:
您将看到\u2026表示\x85字符,但这是该字符的正确Unicode代码点。在
输入字符串用
cp1252
编码。^{{cd2>在将字符串序列化到cd2}之前:如果您的终端不支持其默认代码页中的字符,则此命令可能会引发一个
^{pr2}$UnicodeEncodeError
,但它证明了上述序列化具有正确的Unicode代码点。在相关问题 更多 >
编程相关推荐