Captura1

La digitalización de documentos es una necesidad creciente en el mundo actual, donde la información se presenta en formatos cada vez más variados. Uno de esos formatos, el PDF, es ampliamente utilizado debido a su capacidad para preservar el formato original del documento. Sin embargo, extraer información de archivos PDF puede ser un desafío, especialmente si se requiere un formato editable. En este artículo, te presentaré un script que he desarrollado recientemente para transcribir archivos PDF a un formato Markdown, facilitando así la edición y el manejo de la información.

Características del Script

Este script ofrece varias funcionalidades útiles que mejoran la experiencia de trabajar con archivos PDF. A continuación, se describen algunas de las características más destacadas:

  1. Generación de Archivos Markdown: El script convierte el contenido del PDF a un archivo Markdown, un formato de texto plano que es fácil de leer y editar.

  2. Detección de Títulos: Identifica automáticamente los títulos dentro del documento y los formatea adecuadamente en Markdown, lo que mejora la estructura del contenido resultante.

  3. Textos Resaltados: Capta los textos resaltados en el PDF, permitiendo que la información importante destaque en el archivo Markdown.

  4. Detección de Tablas: Reconoce las tablas presentes en el PDF y las convierte en un formato Markdown, facilitando su visualización y edición.

  5. No OCR: Es importante mencionar que este script no utiliza OCR (Reconocimiento Óptico de Caracteres), por lo que solo funciona con archivos PDF que contienen texto extraíble.

Cómo Utilizar el Script Paso a Paso

Si deseas utilizar este script, aquí te dejo una guía sencilla para que puedas implementarlo en tu propio entorno:

1. Preparación del Entorno

Asegúrate de tener Python instalado en tu máquina y de haber instalado la librería pymupdf4llm. Puedes instalarla utilizando pip:

pip install pymupdf4llm

2. Crear el Script

Crea un archivo Python (por ejemplo, transcriptor_pdf.py) y copia el siguiente código:

import pymupdf4llm
import pathlib
import os

# Buscar archivos PDF en el mismo directorio
pdf_dir = os.path.dirname(__file__)
pdf_files = [f for f in os.listdir(pdf_dir) if f.endswith('.pdf')]

if not pdf_files:
    raise FileNotFoundError("No se encontró ningún archivo PDF en el directorio.")

# Tomar el primer archivo PDF encontrado
pdf_file = os.path.join(pdf_dir, pdf_files[0])

# Extraer el texto del PDF en formato Markdown
md_text = pymupdf4llm.to_markdown(pdf_file)

# Guardar el texto en un archivo Markdown con codificación UTF-8
output_file = pathlib.Path("output.md")
output_file.write_text(md_text, encoding="utf-8")

3. Ejecutar el Script

Coloca el archivo PDF que deseas transcribir en el mismo directorio que el script. Luego, ejecuta el script desde la terminal:

python transcriptor_pdf.py

4. Revisar el Resultado

Una vez que el script haya finalizado su ejecución, encontrarás un archivo llamado output.md en el mismo directorio. Abre este archivo con tu editor de texto favorito para revisar la transcripción.

Ahora puedes abrir y trabajar con el archivo Markdown generado, que mantendrá la estructura y el formato del documento original. Si bien no es perfecto, en la mayoría de los casos cumple cabalmente.