使用wget镜像博客


9

我想反映一个博客,例如www.example.com,用wget

我将wget与以下选项一起使用(shell变量已正确替换):

wget -m -p -H -k -E -np \
    -w 1 \
    --random-wait \
    --restrict-file-names=windows \
    -P $folder \
    -Q${quota}m \
    -t 3 \
    --referer=$url \
    -U 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.6) Gecko/20070802 SeaMonkey/1.1.4' \
    -e robots=off \
    -D $domains
    -- $url

该博客包含驻留在其他域上的图像。

即使我指定了-p选项(下载链接的页面资产),也不会下载这些图像,除非我在-D选项中明确指定了每个域。

如果我省略该-D选项,则wget将跟踪外部的每个链接www.example.com并下载整个Internet。

是否可以wget仅跟踪每个链接下的内容www.example.com并下载每个页面所需的资产,而无论这些资产是否驻留在同一域中,而无需我明确指定每个域?


我也想找到一个很好的答案。我遇到了同样的情况,找不到执行此操作的单个wget调用。我wget -N -E -H -k -K -p首先使用,然后想出了一个脚本来提取丢失的链接图像。
lemonsqueeze 2014年

5
根据这一观点httrack对此是杀手.。下次我会尝试一下,而不是wget。
lemonsqueeze 2014年

假设您的博客(减去页面资产)未跨越多个域,请尝试同时删除-D $domains-H。如果没有-H它,则应该保留在您的域内,但即使它们位于不同的域上,仍应检索直接页面资产。
blubberdiblub 2015年

Answers:


1

不,唯一的方法是使用-D或--domains = [domain list](以逗号分隔的列表形式)指定要wget遵循的域

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.