从Python中的JSON API提取财务数据
我对python非常陌生,我正在尝试从API中提取特定数据 例如,我想提取3y_夏普比。我试过:从Python中的JSON API提取财务数据,python,json,api,Python,Json,Api,我对python非常陌生,我正在尝试从API中提取特定数据 例如,我想提取3y_夏普比。我试过: import requests import json VTI = requests.get("https://eodhistoricaldata.com/api/fundamentals/VTI.US?api_token=OeAFFmMliFG5orCUuwAKQ8l4WWFQ67YX").json() print(VTI["3y_SharpRatio"]) 但收到以下错误: KeyErro
import requests
import json
VTI = requests.get("https://eodhistoricaldata.com/api/fundamentals/VTI.US?api_token=OeAFFmMliFG5orCUuwAKQ8l4WWFQ67YX").json()
print(VTI["3y_SharpRatio"])
但收到以下错误:
KeyError
Traceback (most recent call last) <ipython-input-7-4dc0323003b9> in <module>
----> 1 print(VTI["3y_SharpRatio"])
KeyError: '3y_SharpRatio'
键错误
中的回溯(最近一次呼叫)
---->1次打印(VTI[“3y\U锐度比”])
KeyError:“3y\u SharpRatio”
欢迎任何帮助,如果这是一个非常基本的问题,请道歉 您在帖子中包含了您的API密钥,从安全角度来看这是不好的,但确实允许我看到
3y\u SharpRatio
在这里:
ETF_Data
Performance
3y_Volatility "12.37"
3y_ExpReturn "0.00"
3y_SharpRatio "1.03"
Returns_3Y "14.14"
所以你需要
print(VTI['ETF_Data']['Performance']['3y_SharpRatio']
我已经注释掉了几行,您可以使用这些行一步一步地查找您的密钥。仅打印VTI检查3y_shartatio是否真的是json的一个属性:
json.dumps(VTI)
谢谢!(不是我的API密钥,只是一个测试)
import requests
import json
VTI = requests.get("https://eodhistoricaldata.com/api/fundamentals/VTI.US?api_token=OeAFFmMliFG5orCUuwAKQ8l4WWFQ67YX").json()
# print (json.dumps(VTI, indent = 20))
# print (json.dumps(VTI["ETF_Data"], indent = 20))
# print (json.dumps(VTI["ETF_Data"]['Performance'], indent = 20))
print (VTI["ETF_Data"]["Performance"]['3y_SharpRatio'])
'1.03'