如何从 yahoo finance(Python) 重新排序数据?

How to reorder Data from yahoo finance(Python)?

我正在尝试编写一个 python 脚本,使我能够从 Yahoo.I 中获取一些财务报表项目,我已经尝试使用 yahoofinancials 库,但我只能获取整个页面数据的: 例如,使用此代码:

from yahoofinancials import YahooFinancials
 yahoo_financials = YahooFinancials('AAPL')
 print(yahoo_financials.get_financial_stmts('annual', 'balance'))

我会得到这个:

{
    "balanceSheetHistory": {
        "AAPL": [
            {
                "2016-09-24": {
                    "otherCurrentLiab": 8080000000,
                    "otherCurrentAssets": 8283000000,
                    "goodWill": 5414000000,
                    "shortTermInvestments": 46671000000,
                    "longTermInvestments": 170430000000,
                    "cash": 20484000000,
                    "netTangibleAssets": 119629000000,
                    "totalAssets": 321686000000,
                    "otherLiab": 36074000000,
                    "totalStockholderEquity": 128249000000,
                    "inventory": 2132000000,
                    "retainedEarnings": 96364000000,
                    "intangibleAssets": 3206000000,
                    "totalCurrentAssets": 106869000000,
                    "otherStockholderEquity": 634000000,
                    "shortLongTermDebt": 11605000000,
                    "propertyPlantEquipment": 27010000000,
                    "deferredLongTermLiab": 2930000000,
                    "netReceivables": 29299000000,
                    "otherAssets": 8757000000,
                    "longTermDebt": 75427000000,
                    "totalLiab": 193437000000,
                    "commonStock": 31251000000,
                    "accountsPayable": 59321000000,
                    "totalCurrentLiabilities": 79006000000
                }
            }
        ]
    }
}

我想获取每个元素,例如“现金”,并将其放入包含所有这些数据的变量或数组中,以便获取单个数字。 因此,例如,如果我得到“现金”,我将有一个变量或 array/list 让我得到数字(在本例中为 20484000000,现金)。 我希望我已经说清楚了。 有人知道怎么做吗?谢谢。

由于输出为 json 格式,我们必须使用 json。

from yahoofinancials import YahooFinancials
import json
yahoo_financials = YahooFinancials('AAPL')
w = yahoo_financials.get_financial_stmts('annual', 'balance')
print(w["balanceSheetHistory"]["AAPL"][2]['2019-09-28']['totalLiab'])

更改 'totalLiab' 以获得所需数据并更改“2019-09-28”,您还必须更改 [2]。