Biblioteca Python de conversión de PDF a HTML/XML
Biblioteca Python gratuita y de código abierto para convertir documentos PDF a HTML y XML.
¿Qué es pdfminer.six?
pdfminer.six es una biblioteca Python gratuita y de código abierto que se puede utilizar para convertir documentos PDF a otros formatos.
Aquí hay una breve lista de sus principales funciones de conversión de PDF:
- Conversión de PDF a HTML: Convierta documentos PDF a formato HTML conservando la estructura y el diseño del documento.
- Conversión de PDF a XML: Transforme archivos PDF a formato XML, capturando todos los detalles, incluidas las fuentes y otros elementos.
Primeros pasos con pdfminer.six
Necesita la versión 3.6.0 o superior de Python para instalar y utilizar pypdf. Entonces, primero instale Python y luego use los siguientes comandos para instalar pypdf en su máquina usando pip y entorno virtual.
linux
python3 -m venv venv
source venv/bin/activate
pip install pdfminer.six
Mac OS
python -m venv venv
source venv/bin/activate
pip install pdfminer.six
ventanas
python3 -m venv venv
venv\Scripts\activate.bat
pip install pdfminer.six
Convertir PDF a HTML
Podemos convertir un documento PDF a formato HTML usando la función extract_text_to_fp de la biblioteca pdfminer.six (con el tipo de salida establecido en html) proporcionada por la biblioteca, como se muestra en el siguiente fragmento de código:
Producción
La siguiente captura de pantalla muestra el archivo HTML generado al convertir el documento PDF:
Convertir PDF a XML
También podemos convertir un documento PDF a formato XML usando la misma función extract_text_to_fp (pero con el tipo de salida establecido en xml) proporcionada por la biblioteca, como se muestra en el siguiente fragmento de código:
Producción
La siguiente captura de pantalla muestra el contenido XML convertido del documento PDF:
Conclusión
Generalmente, pdfminer.six admite la conversión de documentos PDF a formato XML sin ningún problema, pero cuando intenta convertir un PDF a HTML, logra transferir el contenido del texto pero a menudo altera el diseño general.