我最近开始使用请求库(非常好)。然而,当我通过post方法获得请求响应时,它似乎返回一个String(unicode),当我检查类型时,即使它看起来像一个字典 - 这使得从中提取数据变得更加困难。
有没有办法让json数据以字典格式返回,所以我可以轻松提取几个字段?
特别是像:
这样的请求>>> 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字符串而不是一个字典(即使它看起来像上面一个)?
答案 0 :(得分:3)
使用响应对象的json
方法。
print r.json()
答案 1 :(得分:1)
使用内置json解码器的请求:
r.json()
请参阅:http://docs.python-requests.org/en/latest/user/quickstart/#json-response-content