Google Colab使用json.load()加载JSON文件报JSONDecodeError是什么原因
报错原因
- 你当前使用的下载地址是GitHub的文件预览网页地址,而非原始JSON文件地址。你执行
wget后保存到本地的train_set.json实际是GitHub的HTML预览页面,完全不符合JSON格式规范,所以json.load()解析时会抛出格式错误。 - 你查看的所谓"JSON文件开头内容"大概率是误看了在线预览的JSON内容,而非本地下载后的实际文件内容。你可以打开本地保存的
train_set.json查看,开头会是HTML的标签代码,而非JSON结构。
修复方案
将wget命令中的地址替换为GitHub原始文件地址,只需把原地址中的blob字段替换为raw即可,修改后的完整代码如下:
import json ! wget -O train_set.json https://github.com/rslab-ntua/MSc_GBDA/raw/master/2020/Exercise_ML2/train_split.json with open('train_set.json') as f: train_set = json.load(f)
修改后重新运行即可正常解析JSON内容生成字典。
内容的提问来源于stack exchange,提问作者George
相关产品推荐
相关产品推荐

