Cómo convertir datos PDF a JSON PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.

Cómo convertir datos PDF a JSON

Los PDF son uno de los formatos de datos más utilizados para documentos comerciales. Muchas empresas y organizaciones dependen de varias herramientas para crear y leer estos documentos PDF.

Sin embargo, es difícil extraer datos específicos/importantes de archivos PDF de forma selectiva.

Aquí es donde JSON (Notación de objetos Javascript) entra en escena.

Es uno de los formatos de datos más queridos para el intercambio de información. Especialmente cuando se trata de aplicaciones web, la mayoría de los datos se comunican mediante JSON a través de API y consultas de base de datos.

En esta publicación de blog, veremos:

  • Cómo Nanonets automatiza la conversión de datos complejos de documentos PDF comerciales complicados a archivos JSON estructurados.
  • Algunas técnicas gratuitas de código abierto para convertir archivos PDF a JSON utilizando módulos de Python, Linux y Javascript.
    • Cómo extraer datos específicos/complejos de archivos PDF, como tablas y cadenas de texto específicas.
    • Flujos de trabajo personalizados que pueden ayudar a automatizar el proceso de conversión de archivos PDF a JSON.

Nanonets que convierten datos PDF específicos en salidas JSON

¿Quiere extraer datos específicos de documentos PDF y convertirlos a JSON? Verificar API de nanonetas para automatizar la conversión por lotes de PDF a JSON desde cualquier tipo de documento técnico.


Conversor de PDF a JSON automatizado Nanonets

  • Regístrate para el plan gratuito de Nanonets que ofrece un crédito de 100 páginas: no se necesita tarjeta de crédito.
  • Agregue un lote de sus archivos PDF comerciales
  • Nanonets captura automáticamente campos de una variedad de tipos de documentos (facturas, recibos, licencia de conducir, pasaportes y tablas)
    • ¡También puede entrenar la IA de Nanonets para detectar/capturar solo los campos de datos de su interés de cualquier tipo de documento!
  • Verifique los datos extraídos y exporte como salidas JSON
    • También puede integrar Nanonets con una gran cantidad de software ERP: programar una llamada con nuestros expertos en inteligencia artificial para probar su caso de uso.
  • Consulte nuestro artículo API de OCR para automatizar flujos de trabajo de PDF a JSON
Cómo convertir datos PDF a JSON PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.
Conversión de PDF a JSON con Nanonets

¿Quieres captura de datos desde documentos PDF y convertir a JSON, csv o Excel? Descubra cómo Nanonets puede ayudar.

Cómo convertir datos PDF a JSON PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.
Un usuario de Nanonets súper feliz


La necesidad de conversión de PDF a JSON

Casi todas las empresas se basan en documentos para compartir información. Estos pueden ser documentación, facturas, declaraciones de impuestos, recibos, informes médicos y mucho más.

Estos documentos a menudo se comparten/reciben como archivos PDF.

Pero si desea buscar información crítica o crear un tablero para analizar y almacenar toda la información importante, la recopilación manual de datos de estos archivos PDF puede ser una tarea ardua.

Si los archivos PDF se generan electrónicamente, podemos copiar y pegar información en las fuentes de datos; de lo contrario, es posible que tengamos que utilizar reconocimiento óptico de caracteres y técnicas de aprendizaje automático para extraer información.

Además, los datos en los archivos PDF no están organizados ni son directamente legibles por máquina. Por lo tanto, es posible que tengamos que buscar información manualmente.

Pero cuando se trata de JSON, todo está organizado en pares clave-valor. Aquí hay un ejemplo.

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

Si puede ver el formato JSON anterior, los datos están más organizados y también podría compartir esta información en la web de manera más conveniente. Esta es la razón por la que exportar datos de archivos PDF a JSON es crucial para muchas empresas.

Beneficios comerciales que vienen con JSON

El formato de datos JSON tiene muchas ventajas sobre los PDF para las empresas:

  1. JSON es más rápido: la sintaxis JSON es fácil de usar; cada vez que intenta analizar cualquier dato JSON, la ejecución es mucho más rápida en comparación con los archivos PDF y otros formatos de datos. Esto se debe a que la sintaxis es liviana y ejecuta la respuesta rápidamente.
  2. Más legible: Los datos JSON son más legibles; tendremos un mapeo de datos sencillo con claves y valores. Por lo tanto, si está buscando algo u organizando los datos de archivos PDF, JSON será más conveniente. Además, JSON admite el anidamiento de datos y, con esto, los datos de las tablas se pueden almacenar de manera más eficiente.
  3. Esquema conveniente: JSON es universal para la mayoría de los sistemas operativos y lenguajes de programación; Por lo tanto, si está creando cualquier software o aplicación web para automatizar su negocio, JSON debería ser el formato de datos correcto. Además, la mayoría de los navegadores web admiten el formato JSON; por lo tanto, no tenemos que hacer un esfuerzo adicional para utilizar software de terceros para leer datos JSON.
  4. Compartir fácilmente: JSON es la mejor herramienta para compartir datos de cualquier tamaño, incluso tablas grandes o texto, etc. Esto se debe a que JSON almacena datos en las matrices, por lo que la transferencia de datos los hace más accesibles. Por esta razón, JSON es un formato de archivo superior para API web y desarrollo web.

En la siguiente sección, veamos algunos de los desafíos que podemos enfrentar al convertir archivos PDF a formato JSON.


Nanonets tiene muchos interesantes casos de uso que podría optimizar el desempeño de su negocio, ahorrar costos e impulsar el crecimiento. Descubra cómo se pueden aplicar los casos de uso de Nanonets a su producto.


Desafíos con la conversión de PDF a JSON

Veamos algunos de los desafíos en la exportación de archivos PDF a JSON.

  1. Detectando fuentes: La gente usa diferentes fuentes, colores y alineaciones dentro de los documentos PDF. Por lo tanto, es muy difícil para los analizadores leerlos. Además, al exportar esto, tendremos que definir reglas específicas para que después de que el analizador extraiga los datos, toda la información se mapee correctamente en formato JSON. En tales casos, las expresiones regulares se utilizan ampliamente para seleccionar un texto específico y luego exportarlo a la clave correcta en el formato JSON.
  2. Detección de texto de documentos escaneados: Como se discutió, cuando los PDF no se generan electrónicamente, tendremos que usar un OCR y elegir un OCR es crucial. Aunque muchos usuarios prueban herramientas de código abierto como tesseract, tienen sus propias limitaciones. Por ejemplo, si el texto se captura de forma incorrecta o no se alinea correctamente durante la captura, es posible que tesseract no funcione y que la elección de otras herramientas sea costosa.
  1. Tablas de identificación: La mayoría de los documentos comerciales contienen información tabular y determinar estas tablas a partir de documentos PDF y convertirlas a JSON es una tarea desafiante. Hay algunas bibliotecas basadas en Python y Java que pueden ayudar a extraer tablas de documentos PDF creados electrónicamente.
  2. Identificación de tablas de archivos PDF escaneados: Cuando se escanean los archivos PDF, la mayoría de los paquetes no funcionan. En este caso, si elegimos un OCR de código abierto como tesseract, podría extraer texto pero perder todo el formato de la tabla. Por lo tanto, es un desafío elegir elementos de esquema en un formato incorrecto. Aquí es donde tendremos que usar algoritmos basados ​​en Machine Learning y Deep Learning. Algunos algoritmos populares se basan en CNN, y se han realizado muchas investigaciones para mejorar estos algoritmos.

A continuación se muestran algunos de los trabajos de investigación que resuelven el problema de la extracción de tablas de documentos:

En la siguiente sección, veamos cómo analizar datos de PDF para generar archivos JSON.

Análisis de datos de archivos PDF y generación de archivos JSON con Python y Linux

Analizar archivos PDF no es una tarea complicada si tiene experiencia como desarrollador.

En primer lugar, tendremos que comprobar si nuestros archivos PDF contienen datos de texto o consisten en imágenes escaneadas. Tendríamos que comprobar si podemos extraer datos de texto o canalizar los archivos a través de una biblioteca de OCR si no se devuelve ningún texto.

Esto podría lograrse utilizando una biblioteca de Python o confiando en algunas utilidades de línea de comandos de Linux.

Pdftotexto es una de las bibliotecas más populares para analizar archivos PDF electrónicos. Podríamos usar esto para convertir todos los datos PDF en formato de texto y luego pasarlos a formato JSON.

Estas son algunas de las instrucciones sobre cómo podemos usar pdftotext y analizar PDF en una máquina Linux.

Primero, instale las herramientas de la línea de comandos:

sudo apt-get install poppler-utils

Luego, usa el pdftotext comando y agregue la ruta de origen del archivo PDF y la ubicación del archivo de texto de destino.

pdftotext {PDF-file} {text-file}

Con esto, deberíamos poder extraer todo el texto legible de los archivos PDF.

Para generar un archivo JSON, tendremos que volver a trabajar en un script basado en nuestros datos que pueda analizar el texto y exportarlos en pares clave-valor relevantes.

Aquí hay un script de ejemplo que escribimos en Python que convierte un simple .txt archivo en formato 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()

Considere que los datos dentro del archivo de texto son:

invoice_id #234
invoice_name Invoice from AWS
invoice_total $345

Aquí, primero importamos la biblioteca JSON incorporada. Ahora creamos un tipo de datos de diccionario para almacenar todos los pares clave-valor de los archivos de texto. A continuación, iteramos a través de cada línea del archivo y lo dividimos en comando, descripción y lo guardamos en el diccionario creado. Por último, creamos un nuevo archivo JSON y usamos el json.dump método para volcar el diccionario en el archivo JSON con una configuración específica que incluye clasificación y sangría.

Sin embargo, nuestros datos de archivos PDF no estarán tan organizados como se muestra en el ejemplo; por lo tanto, es posible que tengamos que utilizar procesos y secuencias de comandos personalizados para realizar un formato de texto complicado. En tales casos, herramientas como Nanonetas será una gran elección, y también veremos cómo Nanonets resuelve este problema de una manera mucho más fácil en las siguientes secciones.

Antes de eso, veamos una biblioteca más que convierte PDF a JSON usando node.js:

pdf2json es un Node.js módulo que analiza y convierte PDF de formato binario a JSON; está construido con pdf.js y lo amplía con elementos de formulario interactivos y análisis de contenido de texto fuera del navegador.

A continuación, se muestra un ejemplo del uso de este módulo para analizar sus archivos JSON:

Primero, asegúrese de tener npm instalador e instale el módulo usando el siguiente comando:

npm install pdf2json

A continuación, en su servidor de nodo, puede utilizar el siguiente fragmento que carga el pdf2json y exporta archivos PDF a 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");

El fragmento de código anterior usa un archivo JSON de ejemplo del módulo y lo exporta a un archivo JSON, podemos verificar esto en el ./test/target/ carpeta en su proyecto. B

A continuación, encontrará una captura de pantalla de cómo el módulo exporta los archivos JSON:

Cómo convertir datos PDF a JSON PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.
exportación JSON

Para analizar archivos PDF en tablas, ¡es posible que estas bibliotecas simplemente no funcionen!


Deberá aprovechar los algoritmos de aprendizaje automático y OCR para extraer datos tabulares en JSON. Nanonets hace precisamente eso, como puede ver a continuación:

Cómo convertir datos PDF a JSON PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.
Nanonets convirtiendo datos de PDF a JSON 


Conversión de datos personalizados de PDF a JSON

A veces, al extraer los datos de los documentos comerciales, es posible que necesitemos personalización. Por ejemplo, digamos que si solo queremos ciertas páginas o tablas, no podemos hacerlo directamente. En este caso, es posible que debamos proporcionar reglas adicionales a los analizadores, lo que de nuevo consume mucho tiempo. Pero veamos cómo podemos hacer la personalización y las acciones que la mayoría de la gente necesita.

A continuación, se muestran algunas de las acciones necesarias para la personalización en la conversión de PDF a JSON:

  • Extraiga solo texto o páginas particulares de archivos PDF
  • Extraiga todas las tablas de documentos PDF
  • Extraiga columnas particulares de ciertas tablas en archivos PDF
  • Filtrar texto de archivos PDF antes de exportarlos a JSON
  • Creación de JSON anidado basado en los datos extraídos de archivos PDF
  • Dar formato a la estructura JSON en función de los datos
  • Crear, eliminar, actualizar valores de ciertos campos en JSON después de la extracción

Estas son algunas de las acciones que a menudo se requieren para almacenar nuestros datos de diferentes maneras, o decir si estamos creando API para una aplicación. Veamos cómo podemos lograrlos.

Extraer texto en particular: En PDF, podríamos extraer el texto en particular usando expresiones regulares; por ejemplo, digamos que si queremos que todos los correos electrónicos y números de teléfono utilicen expresiones regulares, podemos seleccionarlos. Si los PDF están en formato escaneado, debemos entrenarlos en un algoritmo de aprendizaje profundo que pueda comprender los diseños de los PDF y extraer campos en función de las coordenadas y anotaciones realizadas en los datos de entrenamiento. Uno de los repositorios de código abierto más populares para comprender los diseños de documentos y extraer texto es LayoutML, y se entrena en modelos BERT para la extracción de texto personalizada. Sin embargo, deberíamos tener suficientes datos para lograr una mayor precisión en la extracción de texto.

Personalización de la mesa: Como se discutió, las tablas se pueden extraer usando bibliotecas como Camelot y Tabula-py o usando OCR y algoritmos basados ​​en aprendizaje profundo. Pero para la personalización, tendremos que usar bibliotecas como pandas; esto nos permitirá crear, actualizar y serializar los datos de las tablas. Utiliza un tipo de datos personalizado llamado marco de datos, que se usa ampliamente para manipular y personalizar los datos de la tabla. Otras ventajas de usar pandas incluyen la escritura de funciones personalizadas que pueden realizar ciertas operaciones matemáticas durante el proceso de extracción.

Formateo de datos JSON: Después de exportar archivos PDF a JSON, formatearlos es una tarea sencilla, ya que tenemos un tipo de datos más personalizable que son los pares clave-valor. Podríamos desarrollar scripts simples o usar herramientas en línea para buscar a través de estos pares clave-valor y formatearlos. Algunos de los parámetros más comunes para el formateo incluyen sangría, separadores, claves de clasificación, comprobaciones circulares, comprobaciones de datos. Si JSON se usa como API, podríamos usar Postman o cualquier extensión del navegador para formatear los datos e interactuar con las API.


¿Quiere extraer información de documentos PDF y convertirlos a formato JSON? Consulte Nanonets para automatizar la exportación de cualquier información de cualquier documento PDF a JSON.


Sello de tiempo:

Mas de IA y aprendizaje automático