-2

我需要从某个域下载所有 pdf 文件。该域上大约有 6000 个 pdf,其中大多数没有 html 链接(他们已经删除了链接,或者他们从未将链接放在首位)。

我知道大约有 6000 个文件,因为我正在谷歌搜索:filetype:pdf site:*.adomain.com

但是,Google 仅列出前 1000 个结果。我相信有两种方法可以实现这一目标:

a) 使用谷歌。但是,我如何才能从 Google 获得所有 6000 个结果?也许是刮刀?(试过 scroogle,没有运气) b)跳过谷歌并直接在域上搜索 pdf 文件。当大多数它们没有链接时,我该怎么做?

4

1 回答 1

0

如果文件的链接已被删除,并且您无权列出目录,则基本上不可能知道哪个 URL 后面有一个 pdf 文件。

如果您认为过去存在指向这些文件的链接,您可以查看http://www.archive.org并查找该页面的先前状态。

要递归检索网站上提到的所有 pdf,我建议使用 wget。来自http://www.gnu.org/software/wget/manual/html_node/Advanced-Usage.html#Advanced-Usage的示例

您想从 http 服务器上的目录下载所有 gif。您尝试了 'wget http://www.server.com/dir/ *.gif',但这不起作用,因为 http 检索不支持 globbing。在这种情况下,请使用:

     wget -r -l1 --no-parent -A.gif http://www.server.com/dir/

更冗长,但效果是一样的。“-r -l1”表示递归检索(参见递归下载),最大深度为 1。“--no-parent”表示忽略对父目录的引用(参见基于目录的限制),“-A” .gif' 表示只下载 gif 文件。'-A "*.gif"' 也可以。

(只需将 .gif 替换为 .pdf!)

于 2010-06-05T09:09:10.300 回答