我需要镜像特定网站(该特定域下的所有页面)该网站链接到的任何页面(但不是整个网站)。
我对如何做到这一点感到困惑
wget -r --level=inf
(或其他一些变体)将镜像站点。
wget -r -H --level=1
将获得所有链接(来自所有域)到第一级。
任何人都对我如何组合这些有任何想法,以获取整个主站点和深入外部站点的一层。我整个下午都在用头撞着手册。
谢谢
我会使用组合wget -m -k -K -p http://example.com && wget -r -k -K -H -N -l 1 http://example.com
。
关于两个命令:wget -m -k -K -p http://example.com
将镜像(-m = -r --level=inf -N)它,将链接转换到本地镜像(-k),在转换之前备份原始文件(-K)并下载正确查看镜像的所有先决条件 (-p)。
之后,第二个命令wget -r -k -K -H -N -l 1 http://example.com
将执行基本相同的操作,但仅适用于跨越所有主机的一级,并且它将使用 -N 检查时间戳,因此您不会再次下载相同的文件。我在这里没有包含 -p 选项,因为它可以下载很多东西......
小智 6
不幸的是,这对 wget 来说是不可能的(并且尝试解决这个问题-H -l 1
并没有达到您的预期)。你想要的是HTTrack。
httrack --ext-depth=1 http://example.com
Run Code Online (Sandbox Code Playgroud)
这也可以缩写为httrack %e1 http://example.com
。请注意,HTTrack 从 1 开始计数级别,而不是 0,因此除非您增加深度,否则它不会跟踪在外部页面上找到的链接。
归档时间: |
|
查看次数: |
9999 次 |
最近记录: |