如何使用python访问json文件字典中的键值

布拉德利·弗里曼·贝恩

我有一个脚本,可从api中提取json数据,并希望在提取数据后解码并选择要存储到db中的标签。现在,我只需要获取脚本以返回特定的被调用值即可。这就是脚本的外观,在我尝试对其进行解码之前。

import requests
def call():
payload = {'apikey':'945e8e8499474b7e8d2bc17d87191bce', 'zip' : '47120'}
bas_url = 'http://congress.api.sunlightfoundation.com/legislators/locate'
r = requests.get(bas_url, params = payload)
grab = r.json()
return grab

'结果':[{'twitter_id':'RepToddYoung','ocd_id':'ocd-division / country:us / state:in / cd:9','oc_email':'[email protected]', 'middle_name':'C.','votesmart_id':120345,'first_name':'Todd','youtube_id':'RepToddYoung','last_name':'Young','bioguide_id':'Y000064','district' :9,'昵称':无,'办公室':'1007 Longworth House Office Building','term_start':'2015-01-06','thomas_id':'02019','party':'R',' in_office':True,'title':'Rep','govtrack_id':'412428','crp_id':'N00030670','term_end':'2017-01-03','chamber':'house','state_name':'Indiana','fax':'202-226-6866','phone':'202-225-5315','gender':'M','fec_ids' :['H0IN09070'],'州':'IN','网站':' http ://toddyoung.house.gov','name_suffix':无,'icpsr_id':21133,'facebook_id':'186203844738421','contact_form':' https ://toddyoungforms.house.gov/give-me-your-opinion','birthday':'1972-08-24'},{'twitter_id':'SenDonnelly','ocd_id':'ocd-division / country:us / state:in','oc_email':'Sen.Donnelly @ opencongress.org”,“ middle_name”:无,“ lis_id”:“ S356”,“ first_name”:“ Joe”,“ youtube_id”:“ sendonnelly”,“ last_name”:“ Donnelly”,“ bioguide_id”:“ D000607” ','district':无,'nickname':None,'office':'720 Hart Senate Office Building','state_rank':'junior','thomas_id':'01850','term_start':'2013-01 -03','party':'D','in_office':True,'title':'Sen','govtrack_id':'412205','crp_id':'N00026586','term_end':'2019-01-03','chamber':'senate','state_name':'Indiana','fax':'202-225-6798','phone':'202-224-4814 ','gender':'M','senate_class':1,'fec_ids':['H4IN02101','S2IN00091'],'state':'IN','votesmart_id':34212,'website':' http ://www.donnelly.senate.govhttp://www.donnelly.senate.govhttp://www.donnelly.senate.gov','name_suffix':无,'icpsr_id':20717,'facebook_id':'168059529893610','contact_form':' http : //www.donnelly.senate.gov/contact/email-joe','birthday':'1955-09-28'},{'twitter_id':'SenDanCoats','ocd_id':'ocd-division / country:us / state:in','oc_email':'Sen.Coats @ opencongress.org”,“ middle_name”:“ Ray”,“ lis_id”:“ S212”,“ first_name”:“ Daniel”,“ youtube_id”:“ SenatorCoats”,“ last_name”:“ Coats”,“ bioguide_id”: 'C000542','district':无,'nickname':None,'office':'493 Russell Senate Office Building','state_rank':'senior','thomas_id':'00209','term_start':'2011 -01-05','party':'R','in_office':True,'title':'Sen','govtrack_id':'402675','crp_id':'N00003845','term_end':'2017-01-03','chamber':'senate','state_name':'Indiana','fax':'202-228-1820','phone':'202- 224-5623','gender':'M','senate_class':3,'fec_ids':['S0IN00053'],'state':'IN','votesmart_id':53291,'website':' http: //www.coats.senate.govcoats.senate.govcoats.senate.gov','name_suffix':无,'icpsr_id':14806,'facebook_id':'180671148633644','contact_form':' http : //www.coats.senate.gov/contact/','birthday ':'1943- 05-16'}]}

多数民众赞成在返回的json数据,我想专门呼吁IE {'twitter_id': 'RepToddYoung'}, or {'first_name': 'Todd'}

而不是我的脚本返回它检索的整个json文件

姆霍克

查看您返回的数据结构。这是一本包含字典列表的字典。您可以使用以下'results'访问列表

l = r.json()['results']

从那里开始,包含您要搜索的项的字典是列表的第一项,因此:

d = l[0]

可以从字典中检索特定的值:

print(d['twitter_id'])
print(d['first_name'])

您可以简化为:

r.json()['results'][0]['twitter_id']
r.json()['results'][0]['first_name']

可能您将需要遍历该列表:

for d in r.json()['results']:
    print('{first_name} {last_name}: {twitter_id}'.format(**d))

将输出:

Todd Young:RepToddYoung 
Joe Donnelly:SenDonnelly 
Daniel大衣:SenDanCoats

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在使用Python从文件检索的JSON数据中添加键值?

如何在python中打印字典的键值对

如何使用snakeYaml库访问YAML文件中的内部(嵌套)键值

如何根据python中的键值计算字典的频率?

如何使用多个JSON行从JSON文件中的选择对象创建python字典(键:值)

如何使用Swift在此JSON字典中访问特定值?

如何在python中的字典中替换多个键值对?

如何使用变量访问嵌套python词典中的键值?

如何使用键值将列表转换为python中的字典?

如何使用linq从字典中获取嵌套键值对

从python文件访问json中的嵌套字典

如何从python字典中获取所有可能的键值对?

如何使用map函数在python中为字典设置键值

如何从json访问键值?

访问文件中的多个字典 - Python

使用Python从多个文本文件中的多个字典中提取键值对

如何在列表中查找字典键值的索引?(Python)

如何访问有序字典中的键值

从 JSON 字典中获取键值

如何使用Javascript中的键数组过滤键值字典?

如何在python中解析非键值json文件

如何使用python将字典键值写入文本文件

如何使用python脚本用字典键值替换文件中的字符串值

如何交替使用python字典键值对?

如何使用 Python 中的字典字典数组解析 JSON?

如何在python中更新某些字典键值

如何使用python从字典中读取特定的键值数据

使用 json 文件中的特定键值对更新 python 字典

访问字典中匹配的键值