将链接的 html 文件转换为 pdf 文件?

将链接的 html 文件转换为 pdf 文件?

我想转换一本在线书籍(我可以将 html 文件(包括链接的 html 文件)转换为 pdf 文件。

我尝试了两步法http://kmkeen.com/mirror/2009-02-05-14-00-00.html

  1. 首先,通过以下方式下载html文件

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

    但它下载了很多不相关的文件。所以我必须删除不相关的文件。

  2. 然后,我尝试将下载的 html 书转换为 pdf 文件:

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

    但 pdf 文件中的页面顺序不正确。

我想知道下载在线书籍(链接的 html 文件)并将其转换为 pdf 文件的好方法是什么?

我的操作系统是 Ubuntu 12.04。

答案1

正如您链接的说明中所述:

默认的全局扩展将页面按字母顺序排列。

索引页链接到九个不同的文档,其名称不按字母顺序排列。当您说 时htmldoc ... *.html,工具会按该顺序查看它们,并按字母顺序将页面放入文档中。您需要按照要htmldoc处理的顺序在命令行上列出文件。

在这种特定情况下,您可以生成文件名的有序列表,因为它们在索引中链接为:

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

所以

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

就会达到你想要的效果。

相关内容