Wget 目录选项

Wget 目录选项

我已经阅读了 Wget 手册,但不幸的是它似乎没有解决我的问题,所以如果有人能为我提供一些帮助,我将不胜感激。

我们有一个网站(例如)website.com,它直接链接到(例如)website.com/1/、website.com/2/...等。

现在,website.com/r/(其中 r 是整数)的每个页面都链接到多个 pdf 文档。它们不是位于 website.com/r/doc-i.pdf(这会很方便),而是全部位于 website.com/files/doc-i.pdf。

因此,当我运行命令时wget -r -l 2 -A pdf website.com,我当然会得到一个名为“files”的大文件夹,其中包含所有 pdf 文档。

然而,我更希望将它们组织到名为 1、2、...、n 的不同文件夹中,这些文件夹对应于下载它们的页面。由于我将总共下载大约 10,000 个 pdf 文件,因此我宁愿不必手动执行此操作。

那么我如何告诉 Wget 组织文件,而不是按照网站目录结构,而是按照访问文件的路径呢?

我希望我的解释是清楚的,并且这并不是太难实现。

答案1

(未经测试)以下需要一些调整,只是一个一般想法:

### get level1
wget -r -l  website.com/      

#### for each html file otained,
for a in $(find website.com -name '*.html' )
do 
  ### get level 2 but prefix it with the base name
  b=$(basename $a)
  wget -P $b -r -l 1 -A pdf http://$a 
done
  • 可能这个发现需要一些 tunnig
  • 也许添加一些东西mv $b/website.com/files FINAL/$b来降低水平

相关内容