简体   繁体   English

将响应从json嵌套字典转换为python字典

[英]Converting post response from json nested dict to python dict

I've searched and tried. 我已经搜索并尝试过。 I'm getting response back to get my access token. 我得到响应以获取访问令牌。 Im trying to get the keys from the response but it's not working. 我试图从响应中获取密钥,但无法正常工作。 Here's what I've tried: 这是我尝试过的:

r=requests.post(url, data=req_params) 
data=r.json()

data type = dict; 数据类型= dict; data prints: 数据打印:

{u'access_token':lrga242jt204j, u'user':{u'username':u'someoneismad',u'bio':u'im mad'}}

When I access it: unicode has no attribute get 当我访问它时: unicode has no attribute get

Things I've tried 我尝试过的事情

ast.literal_eval(data) #error malformed string
ast.literal_eval(str(data)) #malformed string
json.loads(r) #expected string or buffer
json.loads(str(r)) #no json could be decoded

[[update]] accessing dict [[更新]]访问字典

data.get('access_token')
data['access_token']
data.get('access_token', {}).get('user_id')

Problem is that I run into unicode error as indicated above 问题是如上所述我遇到了unicode错误

Did you try: 你试过了吗:

r=requests.post(url, data=req_params) 
data=r.json()
access_token = data['access_token']
user_data = data['user']
username = user_data['username']
#or
username = data['user']['username']

It should print your access token. 它应该打印您的访问令牌。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM