Comment convertir des données PDF en JSON PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Comment convertir des données PDF en JSON

Les PDF sont l'un des formats de données les plus utilisés pour les documents professionnels. De nombreuses entreprises et organisations dépendent de divers outils pour créer et lire ces documents PDF.

Cependant, il est difficile d’extraire de manière sélective des données spécifiques/importantes à partir de PDF.

C’est là qu’intervient JSON (Javascript Object Notation).

C'est l'un des formats de données les plus appréciés pour l'échange d'informations. Surtout lorsqu'il s'agit d'applications Web, la plupart des données sont communiquées en utilisant JSON via des API et Requêtes de base de données.

Dans cet article de blog, nous examinerons :

  • Comment Nanonets automatise la conversion de données complexes depuis des documents PDF professionnels complexes vers des fichiers JSON structurés.
  • Quelques techniques open source gratuites pour convertir des PDF en JSON à l'aide de modules Python, Linux et Javascript.
    • Comment extraire des données spécifiques/complexes à partir de PDF, telles que des tableaux et des chaînes de texte spécifiques.
    • Flux de travail personnalisés qui peuvent aider à automatiser le processus de conversion de PDF en JSON.

Nanonets convertissant des données PDF spécifiques en sorties JSON

Vous souhaitez extraire des données spécifiques de documents PDF et les convertir en JSON ? Vérifier API Nanonets pour automatiser la conversion par lots de PDF en JSON à partir de tout type de document technique !


Convertisseur automatisé de PDF en JSON Nanonets

  • Inscription pour le plan gratuit de Nanonets qui offre un crédit de 100 pages – aucune carte de crédit nécessaire.
  • Ajoutez un lot de fichiers PDF de votre entreprise
  • Nanonets capture automatiquement les champs d'une gamme de types de documents (factures, reçus, permis de conduire, passeports et tableaux)
    • Vous pouvez également entraîner l'IA de Nanonets à détecter/capturer uniquement les champs de données qui vous intéressent à partir de n'importe quel type de document !
  • Vérifiez les données extraites et exportez-les en tant que sorties JSON
    • Vous pouvez également intégrer Nanonets à une multitude de logiciels ERP – planifier un appel avec nos experts en IA pour tester votre cas d'utilisation.
  • Consultez les API OCR pour automatiser les flux de travail PDF vers JSON
Comment convertir des données PDF en JSON PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
Conversion PDF en JSON avec Nanonets

Vouloir capturer des données à partir de documents PDF et convertir en JSON, csv ou Excel? Découvrez comment les Nanonets peuvent vous aider.

Comment convertir des données PDF en JSON PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
Un utilisateur de Nanonets super content


Le besoin de conversion PDF en JSON

Presque toutes les entreprises s'appuient sur des documents pour partager des informations. Il peut s'agir de documents, de factures, de déclarations fiscales, de reçus, de rapports médicaux et bien plus encore.

Ces documents sont souvent partagés/reçus sous forme de PDF.

Mais si vous souhaitez rechercher des informations critiques ou créer un tableau de bord pour analyser et stocker toutes les informations importantes, la collecte manuelle des données à partir de ces PDF peut s'avérer une tâche ardue.

Si les PDF sont générés électroniquement, nous pouvons copier-coller les informations dans des sources de données ; sinon, nous devrons peut-être utiliser la ROC et des techniques d'apprentissage automatique pour extraire des informations.

De plus, les données des fichiers PDF ne sont ni organisées ni directement lisibles par machine. Par conséquent, nous devrons peut-être rechercher des informations manuellement.

Mais lorsqu’il s’agit de JSON, tout est organisé en paires clé-valeur. Voici un exemple.

{
  "company_name": "Company Name",
  "Invoice_date": "Date ",
  "Invoice_total":"$0.00",
  "Invoice_line_items: "",
  "Invoice_tax": ""
} 

Si vous pouvez voir le format JSON ci-dessus, les données sont plus organisées et vous pouvez également partager ces informations plus facilement sur le Web. C'est pourquoi l'exportation de données depuis des PDF vers JSON est cruciale pour de nombreuses entreprises.

Avantages commerciaux offerts par JSON

Le format de données JSON présente de nombreux avantages par rapport aux PDF pour les entreprises :

  1. JSON est plus rapide: La syntaxe JSON est facile à utiliser ; chaque fois que vous essayez d'analyser des données JSON, l'exécution est beaucoup plus rapide par rapport aux PDF et autres formats de données. En effet, la syntaxe est légère et exécute la réponse rapidement.
  2. Plus lisible: les données JSON sont plus lisibles ; nous aurons un mappage de données simple avec des clés et des valeurs. Par conséquent, si vous recherchez quelque chose ou organisez les données à partir de fichiers PDF, JSON sera plus pratique. De plus, JSON prend en charge l'imbrication des données, ce qui permet de stocker plus efficacement les données des tables.
  3. Schéma pratique : JSON est universel pour la plupart des systèmes d'exploitation et des langages de programmation ; Par conséquent, si vous créez un logiciel ou une application Web pour automatiser votre entreprise, JSON doit être le bon format de données. De plus, la plupart des navigateurs Web prennent en charge le format JSON ; par conséquent, nous n'avons pas à déployer d'efforts supplémentaires pour utiliser un logiciel tiers pour lire les données JSON.
  4. Partage facile: JSON est le meilleur outil pour partager des données de toute taille, même des tableaux ou du texte volumineux, etc. En effet, JSON stocke les données dans les tableaux, de sorte que le transfert de données les rend plus accessibles. Pour cette raison, JSON est un format de fichier supérieur pour les API Web et le développement Web.

Dans la section suivante, examinons certains des défis auxquels nous pouvons être confrontés lors de la conversion de PDF au format JSON.


Nanonets a de nombreux cas d'utilisation qui pourraient optimiser les performances de votre entreprise, réduire les coûts et stimuler la croissance. Découvre ça comment les cas d'utilisation de Nanonets peuvent s'appliquer à votre produit.


Défis liés à la conversion de PDF en JSON

Examinons certains des défis liés à l'exportation de fichiers PDF vers JSON.

  1. Détection des polices: les gens utilisent des polices, des couleurs et des alignements différents dans les documents PDF. Par conséquent, il est vraiment difficile pour les parseurs de les lire. De plus, lors de l'exportation, nous devrons définir des règles spécifiques afin qu'une fois que l'analyseur ait extrait les données, toutes les informations soient correctement mappées au format JSON. Dans de tels cas, les expressions régulières sont largement utilisées pour sélectionner un texte spécifique, puis l'exporter vers la clé appropriée au format JSON.
  2. Détection de texte à partir de documents numérisés : Comme discuté, lorsque les PDF ne sont pas générés électroniquement, nous devrons utiliser un OCR et le choix d'un OCR est crucial. Bien que de nombreux utilisateurs essaient des outils open source comme tesseract, ils ont leur propre ensemble de limitations. Par exemple, si le texte est mal capturé ou mal aligné lors de la capture, tesseract peut ne pas fonctionner et le choix d'autres outils peut être coûteux.
  1. Tables d'identification: La plupart des documents commerciaux contiennent des informations tabulaires, et déterminer ces tableaux à partir de documents PDF et les convertir en JSON est une tâche difficile. Il existe des bibliothèques basées sur Python et Java qui peuvent aider à extraire des tableaux à partir de documents PDF créés électroniquement.
  2. Identification des tableaux à partir des PDF numérisés : Lorsque les PDF sont numérisés, la plupart des packages ne fonctionnent pas. Dans ce cas, si nous choisissons un OCR open source comme tesseract, il pourrait extraire du texte mais perdre tout le formatage du tableau. Par conséquent, il est difficile de sélectionner des éléments de plan dans un format incorrect. C’est là que nous devrons utiliser des algorithmes basés sur le Machine Learning et le Deep Learning. Certains algorithmes populaires sont basés sur les CNN, et de nombreuses recherches ont été menées pour améliorer ces algorithmes.

Vous trouverez ci-dessous quelques-uns des articles de recherche qui résolvent le problème de l'extraction de tableaux à partir de documents :

Dans la section suivante, voyons comment analyser les données d'un PDF pour générer des fichiers JSON.

Analyser les données des PDF et générer des fichiers JSON à l'aide de Python et Linux

L'analyse de fichiers PDF n'est pas une tâche compliquée si vous avez une expérience de développeur.

Tout d'abord, nous devrons vérifier si nos fichiers PDF contiennent des données textuelles ou sont constitués d'images numérisées. Nous devrons vérifier si nous pouvons extraire des données texte ou transférer les fichiers via une bibliothèque OCR si aucun texte n'est renvoyé.

Cela pourrait être réalisé en utilisant une bibliothèque Python ou en s'appuyant sur certains utilitaires de ligne de commande Linux.

PDFtotexte est l'une des bibliothèques les plus populaires pour analyser les PDF électroniques. Nous pourrions l'utiliser pour convertir toutes les données PDF au format texte, puis les transférer au format JSON.

Voici quelques instructions sur la façon dont nous pouvons utiliser pdftotext et analyser le PDF sur une machine Linux.

Tout d'abord, installez les outils de ligne de commande :

sudo apt-get install poppler-utils

Ensuite, utilisez le pdftotext et ajoutez le chemin source du fichier PDF et l'emplacement du fichier texte de destination.

pdftotext {PDF-file} {text-file}

Avec cela, nous devrions pouvoir extraire tout le texte lisible des fichiers PDF.

Pour générer un fichier JSON, nous devrons à nouveau travailler sur un script basé sur nos données qui peut analyser le texte et les exporter dans des paires clé-valeur pertinentes.

Voici un exemple de script que nous avons écrit en Python et qui convertit un simple .txt fichier au format JSON.

import json
  
filename = 'data.txt'
 
dict1 = {}
  
with open(filename) as fh:
  
    for line in fh:
        command, description = line.strip().split(None, 1)
        dict1[command] = description.strip()
  
# creating json file
# the JSON file is named as test1
out_file = open("test1.json", "w")
json.dump(dict1, out_file, indent = 4, sort_keys = False)
out_file.close()

Considérez que les données à l'intérieur du fichier texte sont :

invoice_id #234
invoice_name Invoice from AWS
invoice_total $345

Ici, nous avons d'abord importé la bibliothèque JSON intégrée. Nous créons maintenant un type de données de dictionnaire pour stocker toutes les paires clé-valeur des fichiers texte. Ensuite, nous parcourons chaque ligne du fichier et la dépouillons dans la commande, la description et la conservons dans le dictionnaire créé. Enfin, nous créons un nouveau fichier JSON et utilisons le json.dump méthode pour vider le dictionnaire dans le fichier JSON avec une configuration spécifique qui inclut le tri et l'indentation.

Cependant, nos données à partir de PDF ne seront pas aussi organisées que dans l'exemple ; par conséquent, nous devrons peut-être utiliser des pipelines et des scripts personnalisés pour passer par un formatage de texte compliqué. Dans de tels cas, des outils comme nanonets sera un excellent choix, et nous verrons également comment Nanonets résout ce problème de manière beaucoup plus simple dans les sections suivantes.

Avant cela, examinons une autre bibliothèque qui convertit PDF en JSON à l'aide de node.js :

pdf2json est une node.js module qui analyse et convertit le PDF du format binaire au format JSON ; il est construit avec pdf.js et l'étend avec des éléments de formulaire interactifs et une analyse du contenu textuel en dehors du navigateur.

Voici un exemple d'utilisation de ce module pour analyser vos fichiers JSON :

Tout d'abord, assurez-vous d'avoir npm programme d'installation et installez le module à l'aide de la commande suivante :

npm install pdf2json

Ensuite, dans votre serveur de nœud, vous pouvez utiliser l'extrait de code suivant qui charge le pdf2json et exporte les pdf vers JSON :

let fs = require('fs'),
        PDFParser = require("pdf2json");
 
    let pdfParser = new PDFParser();
 
    pdfParser.on("pdfParser_dataError", errData => console.error(errData.parserError) );
    pdfParser.on("pdfParser_dataReady", pdfData => {
        fs.writeFile("./pdf2json/test/F1040EZ.json", JSON.stringify(pdfData));
    });
 
    pdfParser.loadPDF("./pdf2json/test/pdf/fd/form/F1040EZ.pdf");

L'extrait de code ci-dessus utilise un exemple de fichier JSON du module et l'exporte dans un fichier JSON, nous pouvons le vérifier dans le ./test/target/ dossier dans votre projet. B

Ci-dessous, vous trouverez une capture d'écran de la façon dont le module exporte les fichiers JSON :

Comment convertir des données PDF en JSON PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
Exportation JSON

Pour analyser des PDF dans des tableaux, ces bibliothèques pourraient tout simplement ne pas fonctionner !


Vous devrez tirer parti des algorithmes OCR et Machine Learning pour extraire des données tabulaires en JSON. C'est exactement ce que fait Nanonets, comme vous pouvez le voir ci-dessous :

Comment convertir des données PDF en JSON PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
Nanonets convertissant les données de PDF en JSON 


Conversion de données personnalisée de PDF en JSON

Parfois, lors de l'extraction des données des documents commerciaux, nous pouvons avoir besoin d'une personnalisation. Par exemple, disons que si nous ne voulons que certaines pages ou certains tableaux, nous ne pouvons pas le faire directement. Dans ce cas, nous pourrions avoir besoin de fournir des règles supplémentaires aux parseurs, ce qui prend encore du temps. Mais voyons comment nous pouvons faire la personnalisation et les actions dont la plupart des gens ont besoin.

Vous trouverez ci-dessous certaines des actions requises pour la personnalisation de la conversion PDF en JSON :

  • Extraire uniquement du texte ou des pages particuliers des PDF
  • Extraire tous les tableaux des documents PDF
  • Extraire des colonnes particulières de certains tableaux dans les PDF
  • Filtrez le texte des PDF avant de les exporter en JSON
  • Création de JSON imbriqué sur la base des données extraites des PDF
  • Formater la structure JSON en fonction des données
  • Créer, supprimer, mettre à jour les valeurs de certains champs en JSON après extraction

Ce sont quelques-unes des actions qui sont souvent nécessaires pour stocker nos données de différentes manières, ou dire si nous créons des API pour une application. Voyons comment nous pouvons y parvenir.

Extraire un texte particulier: Dans les PDF, nous pourrions extraire le texte particulier en utilisant des expressions régulières ; par exemple, disons que si nous voulons que tous les e-mails et numéros de téléphone utilisent regex, nous pouvons les sélectionner. Si les PDF sont au format numérisé, nous devons soit les former sur un algorithme d'apprentissage en profondeur qui peut comprendre les mises en page des PDF et extraire les champs en fonction des coordonnées et des annotations apportées aux données de formation. L'un des référentiels open source les plus populaires pour comprendre les mises en page de documents et extraire du texte est LayoutML, et il s'entraîne sur les modèles BERT pour l'extraction de texte personnalisée. Cependant, nous devrions disposer de suffisamment de données pour obtenir une plus grande précision dans l'extraction de texte.

Personnalisation des tableaux : Comme indiqué, les tableaux peuvent être extraits à l'aide de bibliothèques telles que Camelot et Tabula-py ou à l'aide d'OCR et d'algorithmes basés sur l'apprentissage en profondeur. Mais pour la personnalisation, nous devrons utiliser des bibliothèques comme les pandas ; cela nous permettra de créer, mettre à jour et sérialiser les données des tables. Il utilise un type de données personnalisé appelé bloc de données, qui est largement utilisé pour manipuler et personnaliser les données de la table. D'autres avantages de l'utilisation de pandas incluent l'écriture de fonctions personnalisées pouvant effectuer certaines opérations mathématiques pendant le processus d'extraction.

Formatage des données JSON: Après avoir exporté des PDF au format JSON, leur mise en forme est une tâche simple, car nous avons un type de données plus personnalisable qui est les paires clé-valeur. Nous pourrions soit développer des scripts simples, soit utiliser des outils en ligne pour rechercher ces paires clé-valeur et les formater. Certains des paramètres les plus courants pour le formatage incluent l'indentation, les séparateurs, les clés de tri, les contrôles circulaires, les contrôles de données. Si le JSON est utilisé comme API, nous pouvons utiliser Postman ou toute extension de navigateur pour formater les données et interagir avec les API.


Vous souhaitez extraire des informations de documents PDF et les convertir au format JSON ? Découvrez Nanonets pour automatiser l'exportation de toute information de n'importe quel document PDF vers JSON.


Horodatage:

Plus de AI et apprentissage automatique