2016-04-22 101 views
0

不知何故,与破documentation on Arelle's python API截至日期,我设法使API工作并成功加载XBRL文件。如何仅使用Arelle的Python API从XBRL文件提取财务报表?

不管怎么说,我的问题是:

我如何提取只能从XBRL文件中的语句?

下面是Arelle的Windows应用程序的屏幕截图。在本例中使用

网址:https://www.sec.gov/Archives/edgar/data/101984/000010198416000062/ueic-20151231.xml

Arelle GUI

我试图与API实验,这里是我的代码

from arelle import Cntlr 

xbrl = Cntlr.Cntlr().modelManager.load('https://www.sec.gov/Archives/edgar/data/101984/000010198416000062/ueic-20151231.xml') 

for fact in xbrl.facts: 
    print(fact) 

但在执行这个片段后,我与这些轰炸:

PyCharm CLI

我试图得到钥匙可用modelFact及其contextRef,id,decimalsunitRef之间的混合物,这是从我想要提取的没有帮助。由于没有任何文件可以帮助我进一步解决这个问题,所以我在这里不知所措有人能告诉我如何实现只提取语句?

回答

0

我做类似的东西至今有哪些我可以分享一些进展:

通过的Python代码文件去arelle可以检测你可以访问不同的类,如ModelFact,ModelContext的属性,ModelUnit等

要提取的个人数据,比如,你可以把它们放在一个熊猫数据帧如下:

factData=pd.DataFrame(data=[(fact.concept.qname, 
          fact.value, 
          fact.isNumeric, 
          fact.contextID, 
          fact.context.isStartEndPeriod, 
          fact.context.isInstantPeriod, 
          fact.context.isForeverPeriod, 
          fact.context.startDatetime, 
          fact.context.endDatetime, 
          fact.unitID) for fact in xbrl.facts]) 

现在很容易与所有的数据进行工作,筛选那些你想使用等等。如果你想重现报表表格,你还需要将每个事实的链接,以及顺序和排序,但我还没有得到这么远。

+0

你有没有得到太多的进一步使用这种方法? –