Discuss / Python / 奇怪了,我的json.loads()怎么都出问题。

奇怪了,我的json.loads()怎么都出问题。

Topic source

抄了同学的作业,

def fetch_data(url):
    with request.urlopen(url) as f:
        return json.loads(f.read().decode('utf-8'))

老是报错。

更换了url地址,用的是URL = 'https://news.sina.com.cn/'。自己做测试,

发现f.read().decode('utf-8'),可以正常返回数据,类型为<class 'str'>

但是加上json.loads()后,就报错:JSONDecodeError: Expecting value: line 1 column 1 (char 0)

就是找不出原因。网上搜了半天也没找出解决办法。

是JSON序列化没学好么?

将URL换成这个:URL = 'http://www.httpbin.org/get'

就可以用json.loads()了。

怎么回事?

落叶风吟u

#3 Created at ... [Delete] [Delete and Lock User]

你的网址响应返回的不是json格式的数据吧


  • 1

Reply