<class'request.models.Response'>到Json

Mor*_*len 19 python json grequests

我从来没有做过任何面向对象的编程,只做过基本的脚本编写.

我正在玩弄着问候

rs = (grequests.get('https://api.github.com/repositories?since='+str(page), auth=(login, password)) for page in pages)
blah = grequests.map(rs)
print type(blah[0])
Run Code Online (Sandbox Code Playgroud)

回应是:

<class 'requests.models.Response'>
Run Code Online (Sandbox Code Playgroud)

通常我将响应转换为文本,然后将其加载到json中,以便我可以解析它,但我不能用这个响应做到这一点.

我理解类的概念但没有使用它们或者知道如何处理该响应.

有没有办法可以将它转换成json?

ale*_*cxe 18

blah[0]在您的情况下requests.models.Response,根据源代码文档,该类具有使用以下json()方法将JSON响应反序列化为Python对象的方法json.loads():

print blah[0].json()
Run Code Online (Sandbox Code Playgroud)

  • 我尝试响应 &lt;Response [202]&gt; 但收到此“JSONDecodeError:期望值:第 1 行第 1 列(字符 0)” (5认同)

Kri*_*uni 6

响应对象可以通过两种方式转换为 JSON。

  1. 使用方法.json()
    blah[0].json()

或者

  1. 转换为文本并加载为 json。
    json.loads(blah[0].text)

  • 我尝试响应 &lt;Response [202]&gt; 但收到此“JSONDecodeError:期望值:第 1 行第 1 列(字符 0)” (2认同)