Biblioteca de analizador de PDF Python de código abierto
Pruebe esta biblioteca Python de código abierto y gratuita para analizar, leer y extraer texto, imágenes, tablas y otro contenido de documentos PDF.
¿Qué es PyMuPDF?
PyMuPDF, también conocida como Fitz, es una biblioteca Python de código abierto que proporciona un conjunto completo de herramientas para trabajar con archivos PDF. Con PyMuPDF, los usuarios pueden realizar tareas de manera eficiente como abrir archivos PDF, extraer texto, imágenes y tablas, manipular propiedades de la página como rotación y recorte, crear nuevos documentos PDF y convertir páginas PDF en imágenes.
PyMuPDF admite varias funciones que se enumeran a continuación:
- Lectura de documentos PDF: PyMuPDF puede abrir y leer documentos PDF, lo que le permite acceder al texto, las imágenes y otro contenido que contienen.
- Extracción de texto: puede extraer texto de documentos PDF, incluido el contenido del texto, las fuentes y la información de diseño.
- Extracción de imágenes: puede extraer imágenes de documentos PDF en varios formatos, como JPEG o PNG.
- Extracción de tablas: También puede extraer tablas de documentos PDF.
En esta revisión, nuestro enfoque principal estará en las funciones de extracción y análisis de la biblioteca. Para obtener una evaluación en profundidad de las funciones de división, fusión y administración de páginas, haga clic aquí.
Primeros pasos con PyMuPDF
Necesita la versión 3.8.0 o superior de Python para instalar y utilizar PyMuPDF. Entonces, primero instale Python y luego use los siguientes comandos para instalar PyMuPDF en su máquina usando pip y entorno virtual.
linux
python -m venv pymupdf-venv
. pymupdf-venv/bin/activate
pip install pymupdf
Mac OS
python -m venv pymupdf-venv
. pymupdf-venv/bin/activate
pip install pymupdf
ventanas
python -m venv pymupdf-venv
.\pymupdf-venv\Scripts\activate
pip install pymupdf
Extraer texto de PDF
Puede usar la biblioteca PyMuPDF en Python para extraer texto de un documento PDF y realizar análisis de texto, como contar palabras, simplemente usando las funciones proporcionadas en la biblioteca, como se muestra en el siguiente código:
Producción
La siguiente imagen muestra el texto extraído y la cantidad de palabras en el archivo PDF:
Extraer imágenes de PDF
Podemos usar la biblioteca PyMuPDF para extraer imágenes de un documento PDF en Python. El siguiente fragmento de código abre el archivo PDF especificado, extrae imágenes del PDF y las guarda en el directorio de trabajo actual:
Producción
A continuación se muestra la imagen PNG extraída del documento PDF.
Extraer tablas de PDF
También podemos utilizar la biblioteca PyMuPDF para procesar un documento PDF y extraer tablas del mismo. Consulte el siguiente fragmento de código que abre el archivo PDF especificado y extrae tablas del documento PDF:
Producción
La siguiente captura de pantalla muestra la tabla extraída del documento PDF:
Insertar texto en PDF
El siguiente fragmento de código de Python demuestra el uso de la biblioteca PyMuPDF para insertar texto en un archivo PDF y guardar el PDF modificado como text.pdf:
Producción
El texto insertado usando el código anterior está resaltado en el cuadro rojo que se muestra a continuación:
Reconocimiento de texto PDF usando OCR con PyMuPDF
We will perform OCR on the PDF file containing the following image:Producción
La siguiente imagen muestra el texto extraído de la imagen presente en el archivo PDF proporcionado:
Conclusión
En resumen, PyMuPDF es una herramienta profesional con algunas fortalezas y debilidades claras. Es excelente para tareas como OCR y extracción de texto, lo que lo hace valioso para manejar texto en archivos PDF.
Sin embargo, no es tan bueno para extraer tablas de archivos PDF, especialmente cuando los archivos PDF tienen una estructura compleja o más páginas, lo que puede ser un inconveniente para algunos usuarios. Además, puede requerir bibliotecas adicionales como archivos de datos de lenguaje Pandas y Tesseract OCR en determinadas situaciones, lo que añade complejidad a su uso. A pesar de estas limitaciones, PyMuPDF sigue siendo una opción sólida para trabajar con texto en archivos PDF.