Lire XBRL en Python

Les documents XBRL et Inline XBRL (iXBRL) sont des rapports commerciaux électroniques structurés pour répondre à différentes exigences commerciales. Un document XBRL est une collection de faits qui, ensemble, constituent un rapport d’activité. Alors qu’un rapport iXBRL est un rapport lisible par l’homme avec des données balisées intégrées. Nous pouvons facilement analyser un document d’instance XBRL ou iXBRL par programme et lire des objets ou des éléments tels que la référence de schéma, le contexte, l’unité, les éléments, etc. Dans le article précédent, nous avons vu comment créer un document XBRL. Dans cet article, nous allons apprendre à parser un document XBRL en Python.

Les sujets suivants seront traités dans cet article :

  1. Bibliothèque Python Finance pour analyser XBRL
  2. Parser le fichier XBRL
  3. Parser le fichier iXBRL

Bibliothèque Python Finance pour analyser XBRL

Pour analyser un fichier XBRL ou un document d’instance, nous utiliserons l’API Aspose.Finance for Python. Il permet de créer des instances XBRL, d’analyser et de valider les fichiers XBRL ou iXBRL.

La classe XbrlDocument de l’API représente un document XBRL contenant une ou plusieurs instances XBRL. Une instance XBRL est un fragment XML, l’élément racine ayant une balise XBRL. La classe XbrlInstance fournit diverses méthodes et propriétés pour travailler avec les instances XBRL. La classe InlineXbrlDocument de l’API représente un document XBRL en ligne.

Veuillez soit télécharger le package ou installer l’API à partir de PyPI en utilisant la commande pip suivante dans la console :

pip install aspose-finance

Analyser le fichier XBRL en Python

Nous pouvons facilement charger et analyser un document d’instance XBRL en suivant les étapes ci-dessous :

  1. Tout d’abord, chargez un fichier XBRL à l’aide de la classe XbrlDocument.
  2. Ensuite, récupérez toutes les instances à l’aide de xbrlinstances.
  3. Ensuite, accédez à l’instance XBRL souhaitée à partir de la collection.
  4. Ensuite, analysez le contenu de l’instance XBRL.
  5. Enfin, indiquez les données/informations requises.

L’exemple de code suivant montre comment analyser une instance XBRL dans Python.

# Cet exemple de code montre comment analyser un document XBRL.
from aspose.finance.xbrl import XbrlDocument

# Chemin d'accès au répertoire des documents.
inputFile = "C:\\Files\\Finance\\sample.xbrl"

# Initialiser XbrlDocument
document = XbrlDocument(inputFile)

# Obtenir des instances
xbrlInstances = document.xbrl_instances

# Sélectionnez une instance spécifique
xbrlInstance = xbrlInstances[0]

# Analyser
facts = xbrlInstance.facts
schemaRefs = xbrlInstance.schema_refs
contexts = xbrlInstance.contexts
units = xbrlInstance.units

# Afficher les données
if contexts.length > 0:
    for x in contexts:
        print("id: " + x.id)
        print("Entity Identifier : " + x.entity.identifier)

Analyser le fichier iXBRL en Python

Nous pouvons également analyser un document iXBRL en suivant les étapes ci-dessous :

  1. Tout d’abord, chargez un fichier iXBRL à l’aide de la classe InlineXbrlDocument.
  2. Analysez le contenu du document iXBRL.

L’exemple de code suivant montre comment analyser un iXBRL en Python.

# Cet exemple de code montre comment analyser un document iXBRL.
from aspose.finance.xbrl.inline import InlineXbrlDocument

# Chemin d'accès au répertoire des documents.
inputFile = "C:\\Files\\Finance\\Output.html"

# Charger le fichier d'entrée
document = InlineXbrlDocument(inputFile)

# Analyser
inlineFacts = document.facts
contexts = document.contexts
units = document.units

Obtenez une licence gratuite

Vous pouvez obtenir une licence temporaire gratuite pour essayer la bibliothèque sans limitation d’évaluation.

Conclusion

Dans cet article, nous avons appris à parser un document XBRL ou iBXRL en Python. Nous avons également vu comment extraire des données d’objets d’instance XBRL par programmation. En outre, vous pouvez en savoir plus sur l’API Aspose.Finance pour Python en utilisant la documentation. En cas d’ambiguïté, n’hésitez pas à nous contacter sur notre forum.

Voir également