Convertendo uma webpage para PDF pelo terminal

Publicado por edps em 15/11/2011

[ Hits: 12.540 ]

Blog: https://edpsblog.wordpress.com/

 


Convertendo uma webpage para PDF pelo terminal



Salvar os artigos que gosto no formato PDF é uma mania que eu tenho, e felizmente no VOL isso é muito fácil.

Em outros sites, utilizo às vezes a impressora virtual do 'CUPS-PDF' ou a extensão 'Web2PDF' que tenho instalada no meu navegador Opera.

Como dito, aqui no VivaoLinux isso é muito fácil pois o próprio site nos disponibiliza o link 'Versão para impressora', através do qual o conteúdo dos artigos e dicas é reproduzido livre de propagandas e de conteúdo de terceiros. Após isso basta imprimir normalmente ou salvar em PDF ou PS.

Vejam um exemplo de uma dica minha sobre a instalação do kernel 3.4 no Debian, pronto para ser salvo como PDF ou para ser impresso:
Linux: Convertendo uma webpage para PDF pelo terminal

Noutro exemplo, vejamos uma dica do meu amigo André L (pinduvoz) da forma como é exibida no site e já convertida através da extensão 'Web2PDF':
Linux: Convertendo uma webpage para PDF pelo terminal

Linux: Convertendo uma webpage para PDF pelo terminal

Obs.: Vejam que no caso acima, toda a página é impressa no PDF, propagandas, links externos e etc.

E com isso, chegamos à conclusão que no caso do VOL, o melhor a fazer é utilizar o link disponibilizado pelo site e imprimir diretamente ou exportar para PDF ou PS, visto que, como na primeira imagem, o conteúdo nos é disponibilizado livre de qualquer propaganda ou link externo.

E na Web?

Agora vem a parte que me levou a confecção desta dica, ou seja, converter uma página web diretamente para PDF pelo terminal!

Para tal, utilizaremos o pacote 'wkhtmltopdf' disponível em muitas distribuições.

Em Debian|Ubuntu e derivados:

sudo apt-get install wkhtmltopdf
Linux: Convertendo uma webpage para PDF pelo terminal

Arch Linux:

sudo pacman -S wkhtmltopdf

Gentoo:

sudo emerge -av wkhtmltopdf

Slackware:
Através do GIT:
Outros:
Como exemplo, usarei para a conversão a 1ª parte do artigo sobre kernel atualizado no Debian:

wkhtmltopdf -s A4 http://gnu2all.blogspot.com/2011/11/kernel-atualizado-no-debian-squeeze-1.html kernel-atualizado-no-debian-squeeze-1.pdf
Linux: Convertendo uma webpage para PDF pelo terminal

Eis a página já convertida:
Linux: Convertendo uma webpage para PDF pelo terminal

Enquanto testava as funcionalidades do programa resolvi, para fins de comparação, efetuar a conversão de uma página pelo 'wkhtmltopdf' e também pelo 'CUPS- PDF'. O resultado foi assombroso!

As páginas escolhidas foram as 'complicadas' USES do Gentoo:

wkhtmltopdf -s A4 http://http://gentoo-portage.com/USE Gentoo-USES.pdf

O documento salvo pelo 'CUPS-PDF' (Gentoo-Portage_-_USE_Flags_-_Opera.pdf) ocupa 2MB de espaço em disco, enquanto que o 'Gentoo-USES.pdf' criado pelo 'wkhtmltopdf', ocupa apenas 209KB.
Linux: Convertendo uma webpage para PDF pelo terminal

Descobri também um novo endereço mais simplificado, porém muito útil e em nossa língua nativa.

Para maiores informações sobre o uso e opções do programa:

man wkhtmltopdf

Referências

How to convert any internet Webpage to PDF from command line on GNU/Linux: Converter páginas HTML para PDF no Linux com wkhtmltopdf:

Dica previamente publicada em meu blog: gnu2all.blogspot.com - Convertendo uma webpage para PDF pelo terminal

Outras dicas deste autor

Instalando o JDownloader no Linux

Adicionando Web Rádio em Blog (Blogger)

MOC (Music On Console)

O Desenvolvimento de Softwares e o Valor do Debian

Linuxtopia - Documentação online

Leitura recomendada

HandBook FreeBSD em PDF

Como fazer o Torsmo iniciar junto com o KDE

Entenda o sistema de pontos do VOL

Limpando a memória cache no Linux

Evento Debian DIA D 2008

  

Comentários
[1] Comentário enviado por lrobertodaldegan em 14/05/2017 - 19:42h

Excelente dica! Eu estava quebrando a cabeça pra gerar um PDF usando PHP por causa do encode do banco... Gerar um HTML e a partir dele gerar um PDF usando shellscript fica milhões de vezes mais fácil pra quem não manja de PHP (eu)! hahaha!

Muito obrigado!



Contribuir com comentário