将 XBRL 报告实例映射到 JSON
Mapping XBRL report instances to JSON
我正在寻求将 XBRL 报告实例(特别是 SEC 生成的财务报告)转换为 Python 词典或 JSON。我花时间使用 bs4(漂亮的汤)开发代码,但理想情况下我想利用开源 Arelle 库。
我的理解是Arelle软件包有一个叫做“saveLoadableOIM”的插件。 XBRL.org 发布了一般指南;但是,它还没有实际实施。
http://www.xbrl.org/Specification/xbrl-json/CR-2020-05-06/xbrl-json-CR-2020-05-06.html
我发现有关 Arelle 命令提示符用法的文档已过时且不适用于 Python 3.x。谁能提供有关如何通过 python 命令提示符操作 Arelle 的指导;以及,具体来说,如何将 SEC xBRL 报告实例转换为 JSON?我想要一个能够适应标准分类法未来变化的模型,尤其是 GAAP:
https://www.sec.gov/info/edgar/edgartaxonomies.shtml
将以下 MSFT 10-K 的 XBRL 报告实例映射到 JSON:
的示例代码将特别有用
https://www.sec.gov/Archives/edgar/data/789019/000156459018019062/msft-20180630.xml
如果现有的 Arelle 库有限制,我想了解这些是什么。
我在 Python 3 下调用 Arelle:
python3 $HOME/Arelle/arelleCmdLine.py
这是在 Linux 上,假设我已将 Arelle 在我的主目录中检出为 Arelle
。
要加载插件,请使用--plugins
并为其指定Arelle/arelle/plugin
目录下的文件名(不带.py
扩展名)。例如,--plugins=saveLoadableOIM
。然后您可以添加 --help
,您应该会在帮助消息中看到其他选项。
这对我有用:
python3 $HOME/Arelle/arelleCmdLine.py --plugins=saveLoadableOIM --saveLoadableOIM=msft.json -f https://www.sec.gov/Archives/edgar/data/789019/000156459018019062/msft-20180630.xml
使用awesomejq提取数据的例子:
jq '[.facts[] | select( .dimensions.concept | test(":GrossProfit$") )] | sort_by(.dimensions.period)[-1]' msft.json
这将获取最新的 GrossProfit 值:
{
"value": "20343000000",
"decimals": -6,
"dimensions": {
"concept": "us-gaap:GrossProfit",
"entity": "cik:0000789019",
"period": "2018-04-01T00:00:00/2018-07-01T00:00:00",
"unit": "iso4217:USD"
}
}
我应该注意到 xBRL-JSON 规范尚未最终确定,并且此 JSON 的格式可能会随着时间的推移而略有变化。我希望 Arelle 在可用后更新到最终版本。
我不得不解决同样的问题并开发了一个通用的 xBRL 到 JSON 转换器,它可以自动适应美国 GAAP 分类法的任何变化。
API 从 10-K(和 10-Q)文件中提取所有 xBRL 财务报表,将其标准化并转换为 JSON。使用 pandas 数据框就像一个魅力。
您可以提供
URL 到 xBRL 文件,例如MSFT 10-K 归档 https://www.sec.gov/Archives/edgar/data/789019/000156459018019062/msft-20180630.xml
URL 到归档的 HTML 文件,例如https://www.sec.gov/Archives/edgar/data/789019/000156459018019062/msft-10k_20180630.htm
申请的入藏号,例如0001564590-18-019062
标准化财务报表包括:
- 收入报表
- StatementsOfIncomeParenthetical
- 综合收入报表
- StatementsOfComprehensiveIncomeParenthetical
- 资产负债表
- 资产负债表括号
- 现金流量表
- StatementsOfCashFlowsParenthetical
- StatementsOfShareholdersEquity
- StatementsOfShareholdersEquityParenthetical
ConsolidatedStatementsofOperations
或 ConsolidatedStatementsOfLossIncome
等变体会自动标准化为其根名称,例如StatementsOfIncome
.
例子
API 支持 GET HTTP 方法。换句话说,您只需提供 xBRL 文件 URL 和 API returns 完全转换后的 JSON.
即可发出简单的 GET 请求
将 xBRL 文件转换为 JSON
GET 请求:
https://api.sec-api.io/xbrl-to-json?
xbrl-url=https://www.sec.gov/Archives/edgar/data/789019/000156459018019062/msft-20180630.xml&
token=YOUR_API_KEY
已转换JSON
注意:适合此处的简短版本。
{
"StatementsOfIncome": {
"RevenueFromContractWithCustomerExcludingAssessedTax": [
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"value": "274515000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"value": "260174000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"value": "265595000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "us-gaap:ProductMember"
},
"value": "220747000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "us-gaap:ProductMember"
},
"value": "213883000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "us-gaap:ProductMember"
},
"value": "225847000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "us-gaap:ServiceMember"
},
"value": "53768000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "us-gaap:ServiceMember"
},
"value": "46291000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "us-gaap:ServiceMember"
},
"value": "39748000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "aapl:IPhoneMember"
},
"value": "137781000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "aapl:IPhoneMember"
},
"value": "142381000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "aapl:IPhoneMember"
},
"value": "164888000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "aapl:MacMember"
},
"value": "28622000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "aapl:MacMember"
},
"value": "25740000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "aapl:MacMember"
},
"value": "25198000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "aapl:IPadMember"
},
"value": "23724000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "aapl:IPadMember"
},
"value": "21280000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "aapl:IPadMember"
},
"value": "18380000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "aapl:WearablesHomeandAccessoriesMember"
},
"value": "30620000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "aapl:WearablesHomeandAccessoriesMember"
},
"value": "24482000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "aapl:WearablesHomeandAccessoriesMember"
},
"value": "17381000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:AmericasSegmentMember"
},
"value": "124556000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:AmericasSegmentMember"
},
"value": "116914000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:AmericasSegmentMember"
},
"value": "112093000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:EuropeSegmentMember"
},
"value": "68640000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:EuropeSegmentMember"
},
"value": "60288000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:EuropeSegmentMember"
},
"value": "62420000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:GreaterChinaSegmentMember"
},
"value": "40308000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:GreaterChinaSegmentMember"
},
"value": "43678000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:GreaterChinaSegmentMember"
},
"value": "51942000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:JapanSegmentMember"
},
"value": "21418000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:JapanSegmentMember"
},
"value": "21506000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:JapanSegmentMember"
},
"value": "21733000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:RestOfAsiaPacificSegmentMember"
},
"value": "19593000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:RestOfAsiaPacificSegmentMember"
},
"value": "17788000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:RestOfAsiaPacificSegmentMember"
},
"value": "17407000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "srt:StatementGeographicalAxis",
"value": "country:US"
},
"value": "109197000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "srt:StatementGeographicalAxis",
"value": "country:US"
},
"value": "102266000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "srt:StatementGeographicalAxis",
"value": "country:US"
},
"value": "98061000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "srt:StatementGeographicalAxis",
"value": "country:CN"
},
"value": "40308000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "srt:StatementGeographicalAxis",
"value": "country:CN"
},
"value": "43678000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "srt:StatementGeographicalAxis",
"value": "country:CN"
},
"value": "51942000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "srt:StatementGeographicalAxis",
"value": "aapl:OtherCountriesMember"
},
"value": "125010000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "srt:StatementGeographicalAxis",
"value": "aapl:OtherCountriesMember"
},
"value": "114230000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "srt:StatementGeographicalAxis",
"value": "aapl:OtherCountriesMember"
},
"value": "115592000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2020-06-28",
"endDate": "2020-09-26"
},
"value": "64698000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2020-03-29",
"endDate": "2020-06-27"
},
"value": "59685000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-12-29",
"endDate": "2020-03-28"
},
"value": "58313000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2019-12-28"
},
"value": "91819000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-06-30",
"endDate": "2019-09-28"
},
"value": "64040000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-03-31",
"endDate": "2019-06-29"
},
"value": "53809000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-12-30",
"endDate": "2019-03-30"
},
"value": "58015000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2018-12-29"
},
"value": "84310000000"
}
],
"CostOfGoodsAndServicesSold": [
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "us-gaap:ProductMember"
},
"value": "151286000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "us-gaap:ProductMember"
},
"value": "144996000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "us-gaap:ProductMember"
},
"value": "148164000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "us-gaap:ServiceMember"
},
"value": "18273000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "us-gaap:ServiceMember"
},
"value": "16786000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "us-gaap:ServiceMember"
},
"value": "15592000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"value": "169559000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"value": "161782000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"value": "163756000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": [
{
"dimension": "us-gaap:DerivativeInstrumentRiskAxis",
"value": "us-gaap:ForeignExchangeContractMember"
},
{
"dimension": "us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis",
"value": "us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember"
},
{
"dimension": "us-gaap:StatementEquityComponentsAxis",
"value": "us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember"
}
],
"value": "-584000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": [
{
"dimension": "us-gaap:DerivativeInstrumentRiskAxis",
"value": "us-gaap:ForeignExchangeContractMember"
},
{
"dimension": "us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis",
"value": "us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember"
},
{
"dimension": "us-gaap:StatementEquityComponentsAxis",
"value": "us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember"
}
],
"value": "-482000000"
}
]
}
}
我正在寻求将 XBRL 报告实例(特别是 SEC 生成的财务报告)转换为 Python 词典或 JSON。我花时间使用 bs4(漂亮的汤)开发代码,但理想情况下我想利用开源 Arelle 库。
我的理解是Arelle软件包有一个叫做“saveLoadableOIM”的插件。 XBRL.org 发布了一般指南;但是,它还没有实际实施。
http://www.xbrl.org/Specification/xbrl-json/CR-2020-05-06/xbrl-json-CR-2020-05-06.html
我发现有关 Arelle 命令提示符用法的文档已过时且不适用于 Python 3.x。谁能提供有关如何通过 python 命令提示符操作 Arelle 的指导;以及,具体来说,如何将 SEC xBRL 报告实例转换为 JSON?我想要一个能够适应标准分类法未来变化的模型,尤其是 GAAP:
https://www.sec.gov/info/edgar/edgartaxonomies.shtml
将以下 MSFT 10-K 的 XBRL 报告实例映射到 JSON:
的示例代码将特别有用https://www.sec.gov/Archives/edgar/data/789019/000156459018019062/msft-20180630.xml
如果现有的 Arelle 库有限制,我想了解这些是什么。
我在 Python 3 下调用 Arelle:
python3 $HOME/Arelle/arelleCmdLine.py
这是在 Linux 上,假设我已将 Arelle 在我的主目录中检出为 Arelle
。
要加载插件,请使用--plugins
并为其指定Arelle/arelle/plugin
目录下的文件名(不带.py
扩展名)。例如,--plugins=saveLoadableOIM
。然后您可以添加 --help
,您应该会在帮助消息中看到其他选项。
这对我有用:
python3 $HOME/Arelle/arelleCmdLine.py --plugins=saveLoadableOIM --saveLoadableOIM=msft.json -f https://www.sec.gov/Archives/edgar/data/789019/000156459018019062/msft-20180630.xml
使用awesomejq提取数据的例子:
jq '[.facts[] | select( .dimensions.concept | test(":GrossProfit$") )] | sort_by(.dimensions.period)[-1]' msft.json
这将获取最新的 GrossProfit 值:
{
"value": "20343000000",
"decimals": -6,
"dimensions": {
"concept": "us-gaap:GrossProfit",
"entity": "cik:0000789019",
"period": "2018-04-01T00:00:00/2018-07-01T00:00:00",
"unit": "iso4217:USD"
}
}
我应该注意到 xBRL-JSON 规范尚未最终确定,并且此 JSON 的格式可能会随着时间的推移而略有变化。我希望 Arelle 在可用后更新到最终版本。
我不得不解决同样的问题并开发了一个通用的 xBRL 到 JSON 转换器,它可以自动适应美国 GAAP 分类法的任何变化。
API 从 10-K(和 10-Q)文件中提取所有 xBRL 财务报表,将其标准化并转换为 JSON。使用 pandas 数据框就像一个魅力。
您可以提供
URL 到 xBRL 文件,例如MSFT 10-K 归档 https://www.sec.gov/Archives/edgar/data/789019/000156459018019062/msft-20180630.xml
URL 到归档的 HTML 文件,例如https://www.sec.gov/Archives/edgar/data/789019/000156459018019062/msft-10k_20180630.htm
申请的入藏号,例如
0001564590-18-019062
标准化财务报表包括:
- 收入报表
- StatementsOfIncomeParenthetical
- 综合收入报表
- StatementsOfComprehensiveIncomeParenthetical
- 资产负债表
- 资产负债表括号
- 现金流量表
- StatementsOfCashFlowsParenthetical
- StatementsOfShareholdersEquity
- StatementsOfShareholdersEquityParenthetical
ConsolidatedStatementsofOperations
或 ConsolidatedStatementsOfLossIncome
等变体会自动标准化为其根名称,例如StatementsOfIncome
.
例子
API 支持 GET HTTP 方法。换句话说,您只需提供 xBRL 文件 URL 和 API returns 完全转换后的 JSON.
即可发出简单的 GET 请求将 xBRL 文件转换为 JSON
GET 请求:
https://api.sec-api.io/xbrl-to-json?
xbrl-url=https://www.sec.gov/Archives/edgar/data/789019/000156459018019062/msft-20180630.xml&
token=YOUR_API_KEY
已转换JSON
注意:适合此处的简短版本。
{
"StatementsOfIncome": {
"RevenueFromContractWithCustomerExcludingAssessedTax": [
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"value": "274515000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"value": "260174000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"value": "265595000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "us-gaap:ProductMember"
},
"value": "220747000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "us-gaap:ProductMember"
},
"value": "213883000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "us-gaap:ProductMember"
},
"value": "225847000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "us-gaap:ServiceMember"
},
"value": "53768000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "us-gaap:ServiceMember"
},
"value": "46291000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "us-gaap:ServiceMember"
},
"value": "39748000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "aapl:IPhoneMember"
},
"value": "137781000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "aapl:IPhoneMember"
},
"value": "142381000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "aapl:IPhoneMember"
},
"value": "164888000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "aapl:MacMember"
},
"value": "28622000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "aapl:MacMember"
},
"value": "25740000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "aapl:MacMember"
},
"value": "25198000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "aapl:IPadMember"
},
"value": "23724000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "aapl:IPadMember"
},
"value": "21280000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "aapl:IPadMember"
},
"value": "18380000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "aapl:WearablesHomeandAccessoriesMember"
},
"value": "30620000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "aapl:WearablesHomeandAccessoriesMember"
},
"value": "24482000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "aapl:WearablesHomeandAccessoriesMember"
},
"value": "17381000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:AmericasSegmentMember"
},
"value": "124556000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:AmericasSegmentMember"
},
"value": "116914000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:AmericasSegmentMember"
},
"value": "112093000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:EuropeSegmentMember"
},
"value": "68640000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:EuropeSegmentMember"
},
"value": "60288000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:EuropeSegmentMember"
},
"value": "62420000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:GreaterChinaSegmentMember"
},
"value": "40308000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:GreaterChinaSegmentMember"
},
"value": "43678000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:GreaterChinaSegmentMember"
},
"value": "51942000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:JapanSegmentMember"
},
"value": "21418000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:JapanSegmentMember"
},
"value": "21506000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:JapanSegmentMember"
},
"value": "21733000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:RestOfAsiaPacificSegmentMember"
},
"value": "19593000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:RestOfAsiaPacificSegmentMember"
},
"value": "17788000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "us-gaap:StatementBusinessSegmentsAxis",
"value": "aapl:RestOfAsiaPacificSegmentMember"
},
"value": "17407000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "srt:StatementGeographicalAxis",
"value": "country:US"
},
"value": "109197000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "srt:StatementGeographicalAxis",
"value": "country:US"
},
"value": "102266000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "srt:StatementGeographicalAxis",
"value": "country:US"
},
"value": "98061000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "srt:StatementGeographicalAxis",
"value": "country:CN"
},
"value": "40308000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "srt:StatementGeographicalAxis",
"value": "country:CN"
},
"value": "43678000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "srt:StatementGeographicalAxis",
"value": "country:CN"
},
"value": "51942000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "srt:StatementGeographicalAxis",
"value": "aapl:OtherCountriesMember"
},
"value": "125010000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "srt:StatementGeographicalAxis",
"value": "aapl:OtherCountriesMember"
},
"value": "114230000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "srt:StatementGeographicalAxis",
"value": "aapl:OtherCountriesMember"
},
"value": "115592000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2020-06-28",
"endDate": "2020-09-26"
},
"value": "64698000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2020-03-29",
"endDate": "2020-06-27"
},
"value": "59685000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-12-29",
"endDate": "2020-03-28"
},
"value": "58313000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2019-12-28"
},
"value": "91819000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-06-30",
"endDate": "2019-09-28"
},
"value": "64040000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-03-31",
"endDate": "2019-06-29"
},
"value": "53809000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-12-30",
"endDate": "2019-03-30"
},
"value": "58015000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2018-12-29"
},
"value": "84310000000"
}
],
"CostOfGoodsAndServicesSold": [
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "us-gaap:ProductMember"
},
"value": "151286000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "us-gaap:ProductMember"
},
"value": "144996000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "us-gaap:ProductMember"
},
"value": "148164000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "us-gaap:ServiceMember"
},
"value": "18273000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "us-gaap:ServiceMember"
},
"value": "16786000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"segment": {
"dimension": "srt:ProductOrServiceAxis",
"value": "us-gaap:ServiceMember"
},
"value": "15592000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"value": "169559000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"value": "161782000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2017-10-01",
"endDate": "2018-09-29"
},
"value": "163756000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2019-09-29",
"endDate": "2020-09-26"
},
"segment": [
{
"dimension": "us-gaap:DerivativeInstrumentRiskAxis",
"value": "us-gaap:ForeignExchangeContractMember"
},
{
"dimension": "us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis",
"value": "us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember"
},
{
"dimension": "us-gaap:StatementEquityComponentsAxis",
"value": "us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember"
}
],
"value": "-584000000"
},
{
"decimals": "-6",
"unitRef": "usd",
"period": {
"startDate": "2018-09-30",
"endDate": "2019-09-28"
},
"segment": [
{
"dimension": "us-gaap:DerivativeInstrumentRiskAxis",
"value": "us-gaap:ForeignExchangeContractMember"
},
{
"dimension": "us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis",
"value": "us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember"
},
{
"dimension": "us-gaap:StatementEquityComponentsAxis",
"value": "us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember"
}
],
"value": "-482000000"
}
]
}
}