我正在尝试将来自financial Modeling Prep的API的财务数据导入到excel电子表格中。我开始认为Power Query并没有做我想要的事情。我希望有一个包含股票符号(DAL、GOOG、AAL等)静态列表的列,并用来自各种api调用的财务数据填充每一行,比如来自https://financialmodelingprep.com/api/v3/financials/income-statement/DAL的净收入字段和来自https://financialmodelingprep.com/api/v3/stock/real-time-price/DAL的当前股票价格
发布于 2020-04-13 19:22:44
你到底试过什么?从你用下面的M代码给出的第一个链接中提取数据是非常简单的(都是基于UI的,没有任何高级的东西)。将其转换为一个函数以转到每个代码的相关URL并执行相同的转换也很简单
let
Source = Json.Document(Web.Contents("https://financialmodelingprep.com/api/v3/financials/income-statement/DAL ")),
financials = Source[financials],
#"Converted to Table" = Table.FromList(financials, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
#"Expanded Column1" = Table.ExpandRecordColumn(#"Converted to Table", "Column1", {"date", "Net Income"}, {"date", "Net Income"}),
#"Changed Type" = Table.TransformColumnTypes(#"Expanded Column1",{{"Net Income", type number}, {"date", type date}})
in
#"Changed Type"发布于 2021-08-11 20:24:02
这是我的解决方案:
创建参数:
company = "NVDA"
years = 5添加密钥:
api_key = 'YOUR_KEY'请求:
r = requests.get(f'https://financialmodelingprep.com/api/v3/income-statement/{company}?limit={years}&apikey={api_key}')
data = r.json()
data提取数据
date = []
symbol = []
revenue = []
costOfRevenue = []
grossProfit = []
for finance in data:
date.append(finance["date"])
symbol.append(finance["symbol"])
revenue.append(finance["revenue"])
costOfRevenue.append(finance["costOfRevenue"])
grossProfit.append(finance["grossProfit"])
ncome_nvda_dict = {
"Date" : date,
"Ticket": symbol,
"Revenue" : revenue,
"CostOfRevenue" : costOfRevenue,
"grossProfit" : grossProfit,从对象到Pands的
income_nvda_df = pd.DataFrame(income_nvda_dict, columns = ['Date', 'Ticket', 'Revenue', 'CostOfRevenue', 'grossProfit'])https://stackoverflow.com/questions/61157978
复制相似问题