Biblioteca de conversión de HTML a PDF de código abierto en Python
Pruebe esta API de Python gratuita y de código abierto como biblioteca de conversión de HTML a PDF.
¿Qué es WeasyPrint?
WeasyPrint es una biblioteca de código abierto de Python y una herramienta de línea de comandos que convierte archivos HTML y CSS en documentos PDF con una representación de alta calidad, lo que la convierte en una herramienta versátil para generar archivos PDF a partir de contenido web. WeasyPrint permite convertir código HTML en línea, archivos HTML locales y URL web en documentos PDF con una sola línea de código.
A continuación se incluye una breve lista de las funciones compatibles con WeasyPrint:
- WeasyPrint admite muchas de las especificaciones CSS escritas por el W3C.
- Proporciona soporte integral para URL, HTML y etiquetas HTML compatibles.
- WeasyPrint puede manejar recursos externos como imágenes u hojas de estilo CSS a través de un buscador de URL.
- El buscador predeterminado puede abrir archivos y URL HTTP.
- Admite varias funciones relacionadas con la generación de PDF, incluidas fuentes, CSS, CSS nivel 2 revisión 1, selectores nivel 3/4 y texto CSS.
Introducción a WeasyPrint
Necesita la versión 3.7.0 o superior de Python para instalar y usar WeasyPrint. Por lo tanto, primero instale Python y luego use los siguientes comandos para instalar WeasyPrint en su máquina usando pip y virtual environment:
Instalar en Linux
python3 -m venv venv
source venv/bin/activate
pip install weasyprint
weasyprint --info
Instalar en Ubuntu 20.04 o superior
apt install python3-pip libpango-1.0-0 libharfbuzz0b libpangoft2-1.0-0 libffi-dev libjpeg-dev libopenjp2-7-dev
Instalar en MacOS usando Homebrew
brew install weasyprint
Instalar en Windows 11 de 64 bits
python3 -m venv venv
venv\Scripts\activate.bat
python3 -m pip install weasyprint
python3 -m weasyprint --info
Nota: para la instalación en Windows, instale GTK3 antes de ejecutar los comandos anteriores.
Convertir HTML a PDF a través de URL web
Podemos convertir cualquier página web HTML a PDF con una sola línea de código utilizando la biblioteca Python WeasyPrint. Solo necesitamos importar la clase HTML de la biblioteca, crear un objeto de la clase HTML con la URL de un sitio web y llamar al método write_pdf para convertirlo en un documento PDF con el nombre deseado.
Convertir HTML a PDF a través de URL web con CSS en línea
También podemos convertir la URL de un sitio web a PDF con una hoja de estilo en línea utilizando la biblioteca WeasyPrint.
Conclusión
WeasyPrint es una biblioteca Python de código abierto y gratuita fácil de usar que convierte HTML y CSS en documentos PDF. Puede crear plantillas basadas en HTML para los documentos necesarios y luego exportarlos rápidamente a PDF. WeasyPrint ofrece opciones de conversión flexibles a los desarrolladores al permitirles convertir HTML a PDF desde una URL de un sitio web, un archivo HTML local, una cadena que contiene código HTML y un objeto de archivo, etc.
Incluso WeasyPrint es una excelente opción gratuita para convertir documentos HTML a PDF para desarrolladores de Python, aunque en el caso de una estructura HTML y CSS compleja, los documentos PDF generados pueden no mostrarse con alta fidelidad, lo que puede crear problemas para los usuarios con requisitos estrictos.