我有一个脚本,可从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] 删除。
我来说两句