url.json()和json.loads()之间的区别

时间:2018-10-16 03:50:02

标签: python json

我编写了以下代码以从url读取示例JSON数据,

    if (this.maxUnlocks > 0 && this.desiredValue > this.maxUnlocks) {
        Promise.resolve(null).then(() => this.desiredValue = this.maxUnlocks);
        return;
    }

如果我打印HEADER = {"content-type": "application/josn"} session = requests.Session() session.verify = True session.headers = HEADER output = session.request("GET", "https://jsonplaceholder.typicode.com/todos/1", timeout=30) 我会得到,

output

如果我这样做,

<Response [200]>

我得到了实际的output = session.request("GET", "https://jsonplaceholder.typicode.com/todos/1", timeout=30).json() 内容,

json

但是当我这样做的时候,

{u'completed': False, u'userId': 1, u'id': 1, u'title': u'delectus aut autem'}

我明白了

output = session.request("GET", "https://jsonplaceholder.typicode.com/todos/1", timeout=30)
print(json.loads(output))

有人应该在我何时使用 File "/usr/lib64/python2.7/json/decoder.py", line 366, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) TypeError: expected string or buffer 以及何时.json()时给我一个例子吗?

1 个答案:

答案 0 :(得分:4)

当响应为json时,/Library/Java/JavaVirtualMachines/jdk1.8.0_77.jdk/Contents/Home只是.json的快捷方式。

json.loads()

不起作用,因为您需要获取请求的正文,我认为这是

print(json.loads(output))