Skip to main content

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.

Project description



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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tidyxbrl-1.2.13.tar.gz (16.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tidyxbrl-1.2.13-py3-none-any.whl (16.1 kB view details)

Uploaded Python 3

File details

Details for the file tidyxbrl-1.2.13.tar.gz.

File metadata

  • Download URL: tidyxbrl-1.2.13.tar.gz
  • Upload date:
  • Size: 16.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.10.6

File hashes

Hashes for tidyxbrl-1.2.13.tar.gz
Algorithm Hash digest
SHA256 c6daf975db082d5a3f4c85bba5db6afcd56007736ad6c59f6369b14c480c3532
MD5 311bf9ba90647ca567ddb5f1976c2f4e
BLAKE2b-256 94614cb8402a4812c801dba0f811c3292e4db1c3cd45cd226f7b8e5936a81848

See more details on using hashes here.

File details

Details for the file tidyxbrl-1.2.13-py3-none-any.whl.

File metadata

  • Download URL: tidyxbrl-1.2.13-py3-none-any.whl
  • Upload date:
  • Size: 16.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.10.6

File hashes

Hashes for tidyxbrl-1.2.13-py3-none-any.whl
Algorithm Hash digest
SHA256 bf8af304a7320b4ae38efe7f19571a5723d3b3546b9eb3436bf85737022120ef
MD5 67599977c532e18ff782bd364c6647d4
BLAKE2b-256 64b8967a2225b6877070b6ffe40b46c6f21cad767fa4bfc03fd047967437173a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page