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.

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:

Relacionado: Las mejores herramientas para editar un archivo PDF en cualquier lugar

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

Relacionado: JPG vs JPEG: ¿Cuál es la diferencia entre estos formatos de archivo de imagen?

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.