Terminado

Desarrollo de Script Php para Extracción de Texto de Pdf/Jpg y Generación de Json

Publicado el 02 Septiembre, 2025 en Programación y Tecnología

Sobre este proyecto

Abierto

Se requiere el desarrollo de un script en php para la extracción de información textual de archivos de una sola página, tanto en formato pdf como jpg, y su posterior estructuración en un archivo json.

Requisitos clave del proyecto:
- Capacidad para leer y procesar archivos pdf y jpg.
- Implementación de una lógica de extracción que priorice el texto directo en PDFs nativos para una mayor eficiencia y precisión.
- Integración de OCR, preferentemente Tesseract, para ser utilizada como método de respaldo en los siguientes escenarios:
  - Cuando el PDF contenga imágenes escaneadas y la extracción directa de texto falle.
  - Para todos los archivos en formato jpg, siempre usar ocr .
- Generación de un archivo JSON con una estructura clara y definida, conteniendo el texto extraído de los documentos.

Tecnologías y herramientas requeridas:
- PHP (versión 8).
- Librería Tesseract ocr para php (se sugiere 'thiagoalessio/tesseract_ocr' ).
- Extensión Imagick o gd para el preprocesamiento y manejo de imágenes, crucial para optimizar la precisión del ocr.
- Librería PDFParser para la extracción directa de texto de PDFs (se sugiere 'smalot/pdfparser' ).

Funcionalidades a desarrollar:
- Detección automática del tipo de archivo (pdf o jpg).
- Fallback a ocr si la extracción inicial de pdf falla.
- Salida en formato JSON, garantizando que sea limpia, estructurada.

Entregables esperados:
- Código fuente completo y bien documentado.
- Instrucciones detalladas para la instalación y configuración de todas las librerías y dependencias necesarias (Tesseract, PDFParser, etc.).
- Un script funcional que pueda recibir rutas de archivos como entrada y devuelva el JSON resultante.
- Implementación de manejo de errores para situaciones como archivos corruptos, fallos en el proceso de OCR, etc.

Consideraciones adicionales (Plus):
- Optimización avanzada del preprocesamiento de imágenes para maximizar la precisión del OCR (magick o gd)
- Validación del JSON de salida.

Ambiente de desarrollo y ejecución:
- El script debe ser compatible y funcional en un entorno Linux, dada la compatibilidad de Tesseract.

Objetivo:
- Leer facturas de arca, tickets, formulario 931 de cargas sociales y boletas del sindicato.
- El script de php sera llamado con 2 variables: nombre del archivo (que esta alojado en una carpeta del servidor) y el tipo (1 para factura o ticket, 2 para formulario 931 y 3 para sindicato)
- El Json debe devolver:
  - Fecha de factura
  - tipo de factura (a, b, c, etc)
  - numero factura
  - cuit del proveedor
  - nombre del proveedor
- importe total de la factura
- descripcion de la factura
datos similares para un ticket, los datos para el form. 931 y sindicato son mas sencillos
Se proveen datos de ejemplo

Categoría Programación y Tecnología
Subcategoría Programación Web
¿Cuál es el alcance del proyecto? Cambio mediano

Plazo de Entrega: No definido

Habilidades necesarias