Converte arquivos html vinculados em um arquivo pdf?

1

Eu gostaria de converter um livro on-line ( arquivos html vinculados) em um arquivo pdf.

Eu experimentei o modo de dois passos no link

  1. Primeiro, baixe os arquivos html por

    wget -nd -mk http://www.unknownroad.com/rtfm/gdbtut/
    

    Mas ele baixou muitos arquivos não relacionados. Então eu tenho que remover os arquivos não relacionados.

  2. Depois, tento converter o livro html baixado em um arquivo pdf:

    htmldoc --webpage -f gdb.pdf html/index.html html/*.html
    

    mas a ordem das páginas no arquivo pdf não está correta.

Gostaria de saber como baixar e converter um livro on-line (arquivos html vinculados) em um arquivo pdf?

Meu sistema operacional é o Ubuntu 12.04.

    
por Tim 20.08.2014 / 07:23

1 resposta

2

Como mencionado nas instruções que você vinculou:

The default glob expansion puts the pages in alphabetical order.

A página de índice vincula a nove documentos diferentes, cujos nomes não estão em ordem alfabética. Quando você diz htmldoc ... *.html , as ferramentas os veem nessa ordem e colocam as páginas no documento em ordem alfabética. Você precisa listar os arquivos na linha de comando na ordem em que deseja que htmldoc os processe.

Nesse caso específico, você pode produzir uma lista ordenada de nomes de arquivos à medida que eles são vinculados no índice com:

awk '/http:|\.\./ {next}; /<a href.*\.html/ { gsub(/.*href="/, "") ; gsub(".html.*", ".html") ; print }' index.html | uniq

então

htmldoc --webpage -f gdb.pdf index.html $(awk '/http:|\.\./ {next}; /<a href.*\.html/ { gsub(/.*href="/, "") ; gsub(".html.*", ".html") ; print }' index.html | uniq)

terá o efeito desejado.

    
por 20.08.2014 / 10:13