字符串转json场景报错
import json
str = '{"data_source":"favourites","desease_id":"demo_bladder_liuzhuowei","start":0,"size":10,"show_entry_flag":False,"perms":{"prdb":{"patient":{"node_ids":null}}}}'
json = json.loads(str)
print json
Traceback (most recent call last):
File "D:/git/autotest/all_cluster_test/test.py", line 22, in <module>
json = json.loads(str)
File "C:\Python27\lib\json\__init__.py", line 339, in loads
return _default_decoder.decode(s)
File "C:\Python27\lib\json\decoder.py", line 364, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "C:\Python27\lib\json\decoder.py", line 382, in raw_decode
raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded
看报错信息很难发现出错原因
将json类更换为simplejson就可以解决该问题
import simplejson
str = '{"data_source":"favourites","desease_id":"demo_bladder_liuzhuowei","start":0,"size":10,"show_entry_flag":False,"perms":{"prdb":{"patient":{"node_ids":null}}}}'
json = simplejson.loads(str)
print json
Traceback (most recent call last):
File "D:/git/autotest/all_cluster_test/test.py", line 22, in <module>
json = simplejson.loads(str)
File "C:\Users\it\AppData\Roaming\Python\Python27\site-packages\simplejson\__init__.py", line 525, in loads
return _default_decoder.decode(s)
File "C:\Users\it\AppData\Roaming\Python\Python27\site-packages\simplejson\decoder.py", line 370, in decode
obj, end = self.raw_decode(s)
File "C:\Users\it\AppData\Roaming\Python\Python27\site-packages\simplejson\decoder.py", line 400, in raw_decode
return self.scan_once(s, idx=_w(s, idx).end())
File "C:\Users\it\AppData\Roaming\Python\Python27\site-packages\simplejson\scanner.py", line 79, in scan_once
return _scan_once(string, idx)
File "C:\Users\it\AppData\Roaming\Python\Python27\site-packages\simplejson\scanner.py", line 45, in _scan_once
_scan_once, object_hook, object_pairs_hook, memo)
File "C:\Users\it\AppData\Roaming\Python\Python27\site-packages\simplejson\decoder.py", line 194, in JSONObject
value, end = scan_once(s, end)
File "C:\Users\it\AppData\Roaming\Python\Python27\site-packages\simplejson\scanner.py", line 70, in _scan_once
raise JSONDecodeError(errmsg, string, idx)
simplejson.errors.JSONDecodeError: Expecting value:
line 1 column 106 (char 105)
问题原因:False ==》 false
string转json,需要关注string中是否有非字符串的节点值格式不符合要求
-
False/True在string中应该显示为首位小写false/true;
-
None在string中应该显示为null
-
字符串值都应该带引号
问题
:
json
.loads(xxx)后报错ValueError: No
JSON
object
could be
decode
d
原因:注意是unicode编码和'单引号
问题
引起
方法一:将xxx先作字符串转化xxx.replace("u", "").replace("'", '"'),然后再
json
.loads(xxx.replace("u", "").replace("'", '"'))即可
方法二:使用Python内置函数eval(expression[, globals[, locas]]解
1、No
JSON
object
could be
decode
d没有
JSON
对象可以解码
2、把报错的位置进行格式转换变成text,或者直接把报错的位置给(xls)给注释掉。
出现这个
问题
,是因为返回的结果是html格式,而非
json
格式,所以无法解析。
解决方法也很简单,在请求服务的时候加上'f':'
json
'或者'f':'p
json
'就好了,两者的区别在于,
json
更为紧凑,p
json
更为易读。
......
import tushare as ts
df = ts.get_hist_data('sh600016',start='2016-06-23',end='2018-12-30')
当我运行上面的代码时,出现ValueError: No
JSON
object
could be
decode
d这个错误。
这个
问题
出现的原因不是很明了,但是解决的方法很奇特,竟然是因为whitespace miss...
爬取淘宝MM的图片时,发现切换页面,URL都不改变。最后了解到网页是AJAX技术实现的。
百度下,AJAX全称Asynchronous JavaScript and XML ,是指异步JavaScript和XML,跨浏览器动态生成Web应用内容的功能。简单点说,就是在不切换页面的情况下,和服务器端进行数据的交换。
如此模拟打开AJAX网页,服务将会返回
json
格式的数据给你,采用
json
模块中
Traceback (most recent call last):
File "dataDeal.py", line 28, in
create
Json
("/home/wcs/train2014.
json
","/home/wcs/train")
File "dataDeal.py", line 8, in create
Json
data=
json
.load(f)
本人使用爬虫从某数据库中下载了一批数据,本地存为
json
格式(pgp.
json
)然后使用python中的
json
模块进行解析(
json
.load),一直出现下述错误
从google中查找到了同样错误的帖子,尝试修改编码方式,可一直未能解决。由于这个错误没有给出具体的错误来源,很难
定位
问题
所在,这个
问题
一直困扰了一天,知道无意间了解了simple
json
这个模块。
于是使用simplejso...
使用notepad++把文件转成utf-8格式依然报错,添加encoding=‘utf-8’也是报错
所以转换了一下思路,修改了代码
with open(model_path, 'rb') as reader:
model = pickle.load(reader)
# model =
json
.load(reader) 改前的
同样在import部分也要导入pickle
import pickle
# import
在Python中用代码:解析
json
,对应的config.
json
如下:[[username,心情栖息地],[password,123]]但是结果出现“No
JSON
object
could be
decode
d”错误:LINE 2684 : ERROR Unknown Error !Traceback (most recent call last):File"D:\tmp\WordPress\...
前言最近准备用Python爬一些东西(是什么并不重要|ω・`)),然后理所应当()就用到了
json
.loads,于是就踏入了一个又一个的大坑
问题
当我在尝试对requests返回的text进行
json
.loads,神TM地报错了Traceback (most recent call last):File "check.py", line 27, in gets=
json
.loads(req.text...