使用JSON时出现Unicode错误

2024-08-31 11:35:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我知道也有类似的问题贴出来,但我认为我的问题与他们相比有点不同。请原谅我,我4个月前才开始使用Python,我相信我的不成熟表现出来了!在

我正在编写一个程序,它使用Protovis插件在树状图中显示来自CSV文件的LinkedIn数据。据我所知,这个插件的设置是正确的,这一切都是基于O'Reilly对社交网络的挖掘。但是,当我在空闲状态下运行代码时,会收到以下错误消息:

Traceback (most recent call last):
 File "C:/Users/Envy 15/Desktop/MASIDendo", line 115, in <module>
    html = open(HTML_TEMPLATE).read() % (json.dumps(json_output),)
  File "C:\Python27\lib\json\__init__.py", line 231, in dumps
    return _default_encoder.encode(obj)
  File "C:\Python27\lib\json\encoder.py", line 201, in encode
    chunks = self.iterencode(o, _one_shot=True)
  File "C:\Python27\lib\json\encoder.py", line 264, in iterencode
    return _iterencode(o, 0)
UnicodeDecodeError: 'utf8' codec can't decode byte 0x96 in position 17: invalid start `byte`

现在据我所知,Unicode错误的原因是在我的一个文件名中有一个非Unicode字符,但是我已经检查过了,事实并非如此。我的代码指向的部分是:

^{pr2}$

如有任何帮助,将不胜感激!在


Tags: 代码inpy插件jsonencoderreturnlib
2条回答

检查您的基础,验证json\u数据的内容,使用repr()或pprint.pprint(). 在

str和unicode对象有接受错误参数的encode和decode方法,如下所示:"\x66\x89".decode("utf-8", "replace")

在json.dumps文件将数据编码为json,奇怪的是您将其json_output作为输入传递。在

听起来您的json_output对象中有一个无法unicode或unicode编码的字符串。文件名不是问题。在

相关问题 更多 >