从Python中的JSON API提取财务数据

从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

我对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"])
但收到以下错误:

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'