python读取json文件时遇到ISOdate,会报错,怎么处理能够读取数据,新手小白一枚

晒月亮k 2020-08-26 07:09:39
json文件内容如下:
{
"createtime" : ISODate("2020-06-24T06:29:33.473Z"),
"updatetime" : ISODate("2020-07-09T02:23:04.553Z")
}
{
"createtime" : ISODate("2020-06-24T06:38:15.86Z"),
"updatetime" : ISODate("2020-07-09T02:35:42.092Z")
}
{
"createtime" : ISODate("2020-06-24T07:00:33.919Z"),
"updatetime" : ISODate("2020-08-14T07:01:36.704Z")
}

代码:
with open("西部.json",encoding="utf-8") as f:
json_file = json.load(f,cls=MyEncoder)
print(json_file)

各位大佬能否帮忙指点迷津啊
...全文
597 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
crifan 2020-08-28
  • 打赏
  • 举报
回复
{
"createtime" : ISODate("2020-06-24T06:29:33.473Z"),
"updatetime" : ISODate("2020-07-09T02:23:04.553Z")
}
{
"createtime" : ISODate("2020-06-24T06:38:15.86Z"),
"updatetime" : ISODate("2020-07-09T02:35:42.092Z")
}
{
"createtime" : ISODate("2020-06-24T07:00:33.919Z"),
"updatetime" : ISODate("2020-08-14T07:01:36.704Z")
}


你这个json数据=json格式的字符串,不合法 = 不符合JSON的语法
具体有3点
1. 最外层缺少中括号[]
2.每个dict字典之间缺少逗号,
3.每个dict字典内部有多余的ISODate-》需要改为字符串本身

改为:


[
{
"createtime": "2020-06-24T06:29:33.473Z",
"updatetime": "2020-07-09T02:23:04.553Z"
},
{
"createtime": "2020-06-24T06:38:15.86Z",
"updatetime": "2020-07-09T02:35:42.092Z"
},
{
"createtime": "2020-06-24T07:00:33.919Z",
"updatetime": "2020-08-14T07:01:36.704Z"
}
]

才是(其中一种处理方式处理后的)合法的json字符串。
-》才能被正确解析

关于JSON,可以参考我(多年前写)的教程:
JSON详解
snjaychou 2020-08-28
  • 打赏
  • 举报
回复
json数据其实就是字典数据,字典数据是一个健对应一个值,叫键值对。健和值的数据类型可以不一样,但健或值只能是一个类型。你的ISODate("2020-06-24T07:00:33.919Z")明显是字符串类型,所以必须要用引号说明这是一个字符串,因为你的数据里有双引号,为了避免解释器识别错误,可以使用单引号。你的json文件可以改成: { "createtime" : 'ISODate("2020-06-24T06:29:33.473Z")', "updatetime" : 'ISODate("2020-07-09T02:23:04.553Z")' }
晒月亮k 2020-08-27
  • 打赏
  • 举报
回复
json文件里含有超多json对象,想知道怎么处理
tianfang 2020-08-27
  • 打赏
  • 举报
回复
文件内容格式不是json createtime: 后面必须在一个双引号内

37,744

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • WuKongSecurity@BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧