奇怪的python问题,“ unicode”对象没有属性“ read”


问题内容

这是我的代码,有人有什么想法吗?我直接通过浏览器打开JSON内容,它可以正常工作,

data = requests.get('http://ws.audioscrobbler.com/2.0/?method=library.getartists&api_key=4c22bd45cf5aa6e408e02b3fc1bff690&user=joanofarctan&format=json').text
data = json.load(data)
print type(data)
return data

预先感谢林


问题答案:

出现此错误data是因为,它是unicode / str变量,请更改代码的第二行以解决错误:

data = json.loads(data)

json.load在第一个参数位置获取一个文件对象,并调用此read方法。

您也可以调用json响应方法直接获取数据:

response = requests.get('http://ws.audioscrobbler.com/2.0/?method=library.getartists&api_key=4c22bd45cf5aa6e408e02b3fc1bff690&user=joanofarctan&format=json')
data = response.json()