[英]JSON dumps UnicodeDecodeError
我目前有一个程序从网站上抓取足球数据并将其dict
到一个dict
:
dict5[name] = ['To: ' + toteam, 'From: ' + fromteam, 'Price: ' + price, 'Date: ' + newdate]
该网站使用葡萄牙语,原生编码为UTF-8。 toteam,fromteam,price和date都预先编码为UTF-8,只是与dict
的字符串连接在一起。 该程序运行得很好并打印到stdout
没有问题,当我尝试将其转储到像这样的json文件...
with open('test.json', 'w') as f:
f.write(json.dumps(dict5, indent=2))
...它出现以下错误:
Traceback:....
C:\Python27\lib\json\__init__.py, line 238, in dumps
**kw).encode(obj)
C:\Python27\lib\json\encoder.py, line 203, in encode
chunks = list(chunks)
C:\Python27\lib\json\encoder.py, line 428, in _iterencode
for chunk in _iterencode_dict(o, _current_indent_level):
C:\Python27\lib\json\encoder.py, line 381, in _iterencode_dict
yield_encoder(key)
UnicodeDecodeError: 'utf8' codec can't decode byte 0xc3 in position 0: invalid continuation byte
这本质上是从同一站点获取的另一个程序的副本,具有相同的编码,但是一个工作正常。
我觉得有一些我不能理解的unicode-ness元素。 任何人都可以对此有所了解吗?
toteam,fromteam,price和dates都预先编码为utf-8
那是你的问题。 请改用unicode
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.