0

我正在解析 Python 中的 JSON 提要,它包含此字符,导致它无法验证。

有没有办法处理这些符号?它们可以转换还是删除它们的一种整洁方法?

我什至不知道这个符号叫什么或者是什么原因造成的,否则我会自己研究它。

编辑: Stackover Flow 正在剥离字符,所以在这里: http: //files.getdropbox.com/u/194177/symbol.jpg

就是“经典 80 年代”中的那个 [?] 符号

4

2 回答 2

1

这可能意味着您拥有的文本采用某种编码,您需要弄清楚什么编码,并使用 thetext.decode('encoding') 调用将其转换为 Unicode。

我不确定,但它可能是 [?] 字符,这意味着您在那里的显示器也不知道如何显示它。这可能意味着您拥有的数据不正确,并且其中有一个字符在您应该使用的编码中不存在。要处理这种情况,您可以像这样调用解码:thetext.decode('encoding', 'ignore')。除了忽略之外,还有其他选项,例如“replace”、“xmlcharrefreplace”等等。

于 2009-07-02T18:26:31.257 回答
0

JSON 必须以 UTF-8、UTF-16 或 UTF-32 之一编码。如果 JSON 文件包含在其当前编码中非法的字节,则它是垃圾。

如果您不知道它使用的是哪种编码,您可以尝试使用我的jsonlib库进行解析,该库包含一个编码检测器。使用解析的 JSONjsonlib将作为 Unicode 字符串提供给程序员,因此您根本不必担心编码。

于 2009-09-08T23:06:49.597 回答