Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More

tidyxbrl

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

tidyxbrl

A python package to parse the XBRL file format & interface with XBRL APIs in a tidy format. A powerful tool for automated financial analysis, accounting, and investment research using Pandas.


Maintainers
1


PyPI PyPI - Status PyPI - Python Version PyPI - Downloads

tidyxbrl: The tidy Python XBRL Interface

What is it?

tidyxbrl is a Python package that parses XBRL data files and returns dynamic structures that succinctly store the underlying data. This package additionally can interface with the XBRL API and SEC EDGAR interfaces, with further expansion to other XBRL data providers planned for the near future. This package aims to the be the simplest and most effective method to parse XBRL data in Python.

The XBRL Standard

eXtensible Business Reporting Language (XBRL) is a standardized financial reporting framework to structure financial reporting in a way that enables automation and machine processing. This package aims to enable its users to realize the full capabilities of the XBRL standard through parsing files and interfacing with the applicable APIs.

Applicable documentation can be found below:

XBRL

EDGAR

Where to get it

The source code is currently hosted on GitHub at: https://github.com/cowboycodeman/tidyxbrl/

The tidyxbrl package is publically available for download at: https://pypi.org/project/tidyxbrl/

# PyPI
pip install tidyxbrl

Examples

xbrl_parse - Parse xbrl files or website urls

tidyxbrl.xbrl_parse("https://www.sec.gov/Archives/edgar/data/320193/000032019321000010/aapl-20201226_htm.xml")

xbrl_query - Query the XBRL API

response = tidyxbrl.xbrl_apikey(username=username, password=password, client_id=client_id, client_secret=client_secret, platform='pc', grant_type='password', refresh_token='')
dataresponse = tidyxbrl.xbrl_query(access_token=response.access_token.values[0], 
               baseapiurl='https://api.xbrl.us/api/v1/report/search?',
               queryparameters = {'report.entity-name': "APPLE INC.",
                                  'fields': "report.id,report.entity-name,report.filing-date,report.base-taxonomy,report.document-type,report.accession,entity.ticker,report.sic-code,entity.cik,report.entry-type,report.period-end,report.sec-url,report.checks-run,report.accepted-timestamp.sort(DESC),report.limit(20),report.offset(0),dts.id,report.entry-url",
                                  'report.document-type': "10-K"
                        })

edgar_query - Query SEC data using the Central Index Key (CIK)

companycik = tidyxbrl.edgar_cik("ZILLOW GROUP, INC")
desiredcorp = str(companycik[companycik.company.str.contains("ZILLOW GROUP, INC.")]['cik_str'].unique()[0])
tidyxbrl.edgar_query(desiredcorp, query_type = 'submissions')
tidyxbrl.edgar_query(desiredcorp, query_type = 'companyconcept', queryextension = '/us-gaap/AccountsPayableCurrent')
tidyxbrl.edgar_query(desiredcorp, query_type = 'companyfacts')

edgar_frames - Aggregates one fact for each reporting entity

tidyxbrl.edgar_frames(urldescriptor = 'us-gaap/NonoperatingIncomeExpense/USD/CY2019Q1I')

Data Visualization

Real Estate Assets

Dependencies

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts