Cómo convertir una página web a un archivo PDF o imágenes en Linux
¿Quiere saber cómo puede capturar una página web y guardarla como un documento PDF o una imagen usando el terminal? Afortunadamente, Linux tiene una gran cantidad de utilidades que puede utilizar para automatizar la tarea de convertir documentos HTML a archivos e imágenes PDF.
Este artículo le presentará wkhtmltopdf y wkhtmltoimage, utilidades que necesita para facilitar su trabajo.
Cómo convertir HTML a PDF
Si está buscando capturar páginas web y convertirlas en un archivo PDF, la utilidad wkhtmltopdf lo ayudará. Wkhtmltopdf es una herramienta de línea de comandos de código abierto que se utiliza para convertir páginas web en documentos PDF.
Dado que la herramienta funciona sin cabeza dentro de la terminal de Linux, no necesitará ningún controlador web o un marco de automatización del navegador como Selenium.
Instalar wkhtmltopdf en Linux
Wkhtmltopdf no es uno de los paquetes estándar que vienen preinstalados en Linux. Tendrá que instalarlo manualmente utilizando el administrador de paquetes de su sistema.
Para instalar wkhtmltopdf en distribuciones basadas en Ubuntu y Debian:
sudo apt install wkhtmltopdf
En distribuciones basadas en Arch como Manjaro Linux:
sudo pacman -S wkhtmltopdf
La instalación de wkhtmltopdf en distribuciones basadas en RHEL como Fedora y CentOS también es fácil.
sudo dnf install wkhtmltopdf
Sintaxis básica
La sintaxis básica del comando es:
wkhtmltopdf webpage filename
… donde página web es la URL de la página web que desea convertir y nombre de archivo es el nombre del archivo PDF de salida.
Para convertir la página de inicio de Google en un documento PDF:
wkhtmltopdf https://google.com google.pdf
Producción:
Al abrir el archivo PDF, notará que wkhtmltopdf ha convertido con precisión la página web en un documento.
Imprima varias copias de la página web
La marca –copies es un salvavidas si desea que su archivo de salida tenga varias copias de la página web. Tenga en cuenta que al imprimir varias copias, wkhtmltopdf no generará varios archivos PDF, sino que agregará páginas adicionales a un solo documento.
Para crear tres copias de la página de inicio de Google:
wkhtmltopdf --copies 3 https://google.com google.pdf
El archivo PDF de salida contendrá tres páginas como se especifica en el comando mencionado anteriormente.
Agregar un filtro de escala de grises a la salida
Para agregar un filtro de escala de grises al archivo PDF, use la marca -g o –grayscale con el comando:
wkhtmltopdf -g https://google.com google.pdf
wkhtmltopdf --grayscale https://google.com google.pdf
Archivo de salida:
Cambiar la orientación del PDF
De forma predeterminada, wkhtmltopdf genera el archivo PDF en formato vertical, es decir, retrato. Para cambiar este comportamiento predeterminado y capturar páginas web en formato horizontal, use la marca –orientation con el comando:
wkhtmltopdf --orientation landscape https://google.com google.pdf
Producción:
Tenga en cuenta que la versión horizontal del documento tiene un área de espacios en blanco más grande en comparación con la versión vertical.
No incluya imágenes durante la conversión
Mientras genera la salida, si no desea que wkhtmltopdf represente imágenes presentes en una página web, use la marca –no-images :
wkhtmltopdf --no-images https://google.com google.pdf
Producción:
Cómo convertir una página web en imágenes
La utilidad wkhtmltoimage es parte del paquete wkhtmltopdf. Si está trabajando en un informe y desea incluir imágenes de un sitio web, esta herramienta funcionará a su favor. La terminal de Linux no solo le facilita la captura de imágenes, sino que también le brinda una variedad de opciones que le permiten personalizar su salida.
Sintaxis básica
Wkhtmltoimage tiene una sintaxis similar a wkhtmltopdf:
wkhtmltoimage webpage filename
… donde página web es la URL de un sitio web y nombre de archivo es el nombre de la imagen de salida.
Convertir una página web en una imagen
Continuando con el ejemplo antes mencionado, convierta la página de inicio de Google en imágenes.
wkhtmltoimage https://google.com google.png
Producción:
También puede especificar un formato de archivo personalizado que desee que tenga la imagen de salida. Wkhtmltoimage admite las siguientes extensiones de archivo:
- JPEG / JPG
- PNG
- SVG
Por ejemplo, si desea generar una imagen JPG, simplemente reemplace la extensión del archivo con JPG en el comando:
wkhtmltoimage https://google.com google.jpg
Captura de páginas web con la terminal de Linux
Debe tener un visor de PDF instalado en su sistema Linux si desea ver los archivos PDF generados por wkhtmltopdf. Si bien la mayoría de las distribuciones de Linux vienen con un editor de PDF preinstalado, puede elegir e instalar manualmente un editor de PDF que se adapte a sus necesidades.