python 请求库响应格式

python requests library response format

我最近开始使用请求库(非常棒)。但是,当我通过 post 方法获得请求响应时,它似乎 return 一个 String(unicode) ,当我检查类型时,即使它看起来像一本字典——这使得它更难拉来自它的数据。

有没有办法将 json 数据 return 编成字典格式,以便我可以轻松提取几个字段?

特别是这样的请求:

>>> payload = {'key1': 'value1', 'key2': 'value2'}
>>> r = requests.post("http://httpbin.org/post", data=payload)
>>> print(r.text)
{
  ...
  "form": {
    "key2": "value2",
    "key1": "value1"
  },
  ...
}

r.text 是一个 unicode 字符串而不是字典(即使它看起来像上面的字典)?

使用响应对象的json方法。

print r.json()

使用 Requests 内置 json 解码器:

r.json()

参见:https://requests.readthedocs.io/en/master/user/quickstart/#json-response-content