解决Expecting property name enclosed in double quotes

简介

今天在写一个接口的时候碰到的

操作

接口的返回结果如下

1
2
3
4
5
6
7
8
9
__GetZoneResult_ = {
    mts:'1653363',
    province:'北京',
    catName:'朗玛信息',
    telString:'16533639084',
	areaVid:'29400',
	ispVid:'null',
	carrier:'朗玛信息'
}

格式化后变成虾米哪这样

1
2
3
4
5
6
7
8
9
{
    mts:'1653363',
    province:'北京',
    catName:'朗玛信息',
    telString:'16533639084',
	areaVid:'29400',
	ispVid:'null',
	carrier:'朗玛信息'
}

接着就是把它格式化成json信息

json.loads(res)

然后报错

json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes: line 2 column 5 (char 7)

很明显是json的数据格式的问题

推荐一个包demjson

res = demjson.decode(res)

问题解决

demjson 有两个方法

  • encode 将对象转换为json
  • decode 将json转化为对象

欢迎关注我的博客 www.bboy.app Have Fun