Guarda páginas webs (screenshots de webs) en PDF con un comando

A veces deseamos guardar algo de una web en PDF en nuestro PC, para ello existe la herramienta: wkhtmltopdf

O sea, mediante un comando podemos guardar X página en .pdf, pero primero instalemos la aplicación:

En Debian, Ubuntu o derivados basta con instalar wkhtmltopdf:

sudo apt-get install wkhtmltopdf

Instalará sus dependencias como son webkit y algunas librerías qt, pero son librerías y nada raro 😉

En otras distros imagino que el paquete debe llamarse igual.

Una vez la tengamos instalada, usarla es realmente simple, por ejemplo vamos a guardar www.google.com:

wkhtmltopdf www.google.com google.pdf

O sea, le pasamos como primer parámetro la URL de lo que deseamos salvar, y como segundo parámetro el nombre y .pdf del archivo final que queremos.

Les dejo un screenshot de cómo se me muestra a mí el .pdf:

Y aquí les dejo el .pdf:

Descarga de archivo Google.pdf

Si desean conocer más opciones de esta aplicación, sin lugar a dudas deben leerse la ayuda (man wkhtmltopdf) pues el listado es algo extenso, incluye opciones para uso de proxy, usar cookie, header personalizado, codificación del sitio, etc.


22 comentarios, deja el tuyo

Deja tu comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.

  1.   Juan Ignacio dijo

    Muy buena herramienta! Gracias por el dato!
    Lastima el nombre difícil de recordar che…

    1.    KZKG^Gaara dijo

      Gracias por tu comentario 🙂
      Sobre el nombre… bueno, siempre podemos hacer un alias 😉 -» https://blog.desdelinux.net/tag/alias/

  2.   FernandoRJ dijo

    Uma forma fácil de ter uma página web offline é através de printfriendly.com

  3.   dmacias dijo

    Yo usaba hace mucho pdfmyurl, pero he probado este y sobre arch no me va, hace como que lo descarga y luego no esta. Cuando tenga mas tiempo miro que seguro me falta cualquier libreria o algo ya que lo tengo recien instalado.
    Un saludo y buen trabajo el que haceis 🙂

  4.   krel dijo

    Hostia, me gustan tus post KG**** pero esto una forma genial de perder el tiempo complicándose la vida y lo demás que lo ponga otro ….
    Por un lado están las opciones como la de Fernando y propongo una mejor CleanSave en Chrome.
    Luego, mejor que todo eso: Nixnote con el plugin Clearly de Evernote para el navegador.
    Como único veo más menos esto válido es cuando estamos trabajando sin interfaz, por lo demás. ….kk

    1.    KZKG^Gaara dijo

      En caso de no querer instalar un plugin en el navegador, o simplemente si no deseo abrir el navegador, esta alternativa es de lo mejor que encontré.

      En Linux la diversidad es sin lugar a dudas una ventaja, hay quienes gustan de usar addons para aplicaciones y otros simplemente gustan aplicaciones independientes para tareas diferentes.

      Yo me limito a compartir todos mis conocimientos, ustedes (los usuarios) elijan el método que más les guste 😉

      Gracias por tu comentario.

      1.    krel dijo

        Me parece totalmente válido el tutorial pero no sé, últimamente me he vuelto cómodo y solo me toco la terminal para lo imprescindible. Igualmente este post lo voy a meter en mi Nixnote, XD
        Saludos 🙂

        1.    m dijo

          Si necesitás usar esta herramienta en un script u automatizar conversiones de páginas web a PDF te metés Evernote, Chromium y toda tu parafernalia en donde nunca ilumina el Sol.

          Además que tiene esto de complicado? Hostias, pero si es tan fácil como copiar el URI, pegarlo en la línea de comando (demasiado práctico para los que usamos Yakuake) y agregar el nombre del archivo.

          1.    krel dijo

            Perdón !!!!!!!!!!! Cada cual busca los más sencillo pero ya te digo, ni siquiera lo que cuentas es eficiente en tiempo ni en recursos. Con eso te lo digo todo, para hacer una cosa que se hace con click tu al menos necesitas dos operaciones.
            1 Llamar a bash
            ¿el comando ese como era?
            Si te acuerda sigues al paso 3, sino el paso 2.
            2 Busca el comando en los apuntes (más tiempo perdidooooooooooo)
            3 Lanzar el programa. (AHhhh, escribir es más lento que hacer clicks)

            En mi caso, solo un click, y tengo unao mejor organización, y cuando quiero ver algo sincronizo Nixnote. Pero si no quiero Nixnote, CleanSave por si solo ya es mejor, de hecho puedo ya enviarlo directamente a Dropbox, y demáß.Además en todos los casos los puedo tener sincronizados en varios ordenadores. etc etc etc

            Luego, ese script hace una replica de la página, mientras que con lo que comento solo copias lo que te interese.
            Por tanto, no te muerdas la cola. Paso de seguir porque terminaría burlándome.
            Saludos

          2.    m dijo

            «siquiera lo que cuentas es eficiente en tiempo ni en recursos. Con eso te lo digo todo, para hacer una cosa que se hace con click tu al menos necesitas dos operaciones.
            1 Llamar a bash
            ¿el comando ese como era?
            Si te acuerda sigues al paso 3, sino el paso 2.
            2 Busca el comando en los apuntes (más tiempo perdidooooooooooo)
            3 Lanzar el programa. (AHhhh, escribir es más lento que hacer clicks»

            Ahhh mirá lo que vengo a enterarme, gracias!!
            :p
            Así que escribir es más lento que usar el mouse!? Deberías avisarle a los ingenieros de NVidia ya que ellos usan Emacs y Vim:
            http://www.phoronix.com/scan.php?page=article&item=nvidia_qa_linux&num=1
            (Pero qué tontos que son estos tipos, usar Emacs o Vim para las miles de líneas de código que escriben, revisan y testean por día, si serán inútiles… ah, no, pará… son ingenieros con Ph. D.! Mmm… FUCK!)

            O quizás podrías explicarle a los miles de administradores de sistemas que se manejan a diario con Vim e Emacs desde una consola las bondades de hacer uso y abuso del mouse?

            «1 Llamar a bash
            ¿el comando ese como era?
            Si te acuerda sigues al paso 3, sino el paso 2.»
            Me estás trolleando, no? O simplemente nunca abriste una consola en tu vida?

            «2 Busca el comando en los apuntes (más tiempo perdidooooooooooo)»
            Más trolling?

            «3 Lanzar el programa. (AHhhh, escribir es más lento que hacer clicks»
            Todavía más trolling!!!!??? O es que simplemente no tenés idea de lo que hablás?

            «Por tanto, no te muerdas la cola. Paso de seguir porque terminaría burlándome.»
            Acabás de demostrar que no tenés tanta tela, tranquilo.

          3.    krel dijo

            Jajaja, te comento, las cosas hay que saberlas llevar con dignidad, yo me opongo totalmente a tutos de: escucha música en la terminal, twiter en la terminar, torrent en la terminal, etc etc. Todo eso me parece cosas de niños que no tienen otra forma de más útil de perder el tiempo.

            En cuanto a lo de los clicks en este tema, has soltado una idiotez que ni te lo crees. Cronometra esta operación y verás que lo que dices no se sostiene.

            Pero bueno, como no tienes identidad y ves que los de Nvidia hacen una cosa, y como son lo que quieres ser cuando seas grande (yo quería ser astronauta), siempre serás un imitador.

            La terminal es útil pero no es ninguna panacea. De hecho prefiero distros como opensuse que con YaST apenas tengo que tocarla para tareas administrativas. Será que ya me estaré haciendo mayor.

            Por lo demás solo dejas claro, que eres un «seguidor» que intenta demostrar lo que no eres y que crees que usando la terminal para cualquier tontería te hace diferente. Bueno, diferente si te hace pero en un sentido negativo. Ahh, solo sabes decir troll, ahi sigues siendo un seguidor de segunda.

            Nada chaval, que ha sido divertido. Saludos.

      2.    Edduardo dijo

        Si eres muy Vago o simplemente te gusta automatizar las cosas al máximo, de seguro que eres un adicto a la terminal, no es que sea más o menos complicado, depende de que quieras hacer. Si quieres y tienes tiempo das clic derecho, sino haces un script que busque los sitios webs que le interesen a los suscriptores de tu página, convierta esos sitios webs en pdf los comprima y los mande por correo, o puedes hacer lo que se te pueda imaginar tan solo con los conocimientos y la terminal.

        Saludos y gracias por el dato.

    2.    Max Steel dijo

      Pues yo creo que todos se complican de más… Tan simple como un ctrl+p para imrpimir y seleccionar en PDF, y listo..

      1.    Andres dijo

        juapushhhh para todos los de arriba 😛

  5.   Dragnell dijo

    Excelente herramienta junto wget me ha servido para hacer llevar la documentación de algunos sitios a pdf. Saludos

  6.   Arriaga dijo

    en archlinux no funciona.
    primero me daba un error de gnome-keyring luego con sudo no me da error pero no crea el pdf.

  7.   Rainbow_fly dijo

    Alguien me ayuda? xD no funciona bien
    rain@Ubuntu-12:~/Escritorio$ wkhtmltopdf https://blog.desdelinux.net/guarda-paginas-webs-screenshots-de-webs-en-pdf-con-un-comando/ prueba.pdf
    Loading page (1/2)
    QFont::setPixelSize: Pixel size ] 88%
    WARNING: gnome-keyring:: couldn’t connect to: /tmp/keyring-Uz7GwI/pkcs11: No existe el archivo o el directorio
    Printing pages (2/2)
    QFont::setPixelSize: Pixel size <= 0 (0)
    Done

    Y queda un archivo imposible de abrir

  8.   Daniel Rojas dijo

    Muy bueno para cuando no tenemos ganas de abrir el navegador 😛

  9.   rama dijo

    en debian tanto con iceweasel/firefox como con chromium/chrome podes imprimir cualquier pagina web en pdf. basta con solo ir a: imprimir, luego elegir la opción «imprimir a un archivo» formato de salida pdf. lo interesante de esta opción es que también podemos hacer ciertas configuraciones de como se va a ver la pagina impresa en pdf

    1.    Baron Ashler dijo

      La verdad tienes razón esta disponible en chromium 😀 aun así tendré en cuenta este post. Gracias

  10.   Diego dijo

    Hola.

    No es mejor CTRL+P , y se le da la opción imprimir a un archivo , le colocas el nombre que quieras al documento y listo.

  11.   Joan dijo

    Falta que publiques dónde encontrar el PDF acabado para redondear tu artículo…