![爬取网站文件](https://linux22.com/image/1517769/%E7%88%AC%E5%8F%96%E7%BD%91%E7%AB%99%E6%96%87%E4%BB%B6.png)
你好,我想下载所有 PDFhttp://www.allitebooks.com/并想使用 wget。我的命令是"http://www.allitebooks.com/" -P "C:\dummydir" -c -A pdf -r
,但我认为它现在无法跟踪到子域的链接,我该如何修复它以便下载http://file.allitebooks.com/20170105/Internet%20of%20Things%20and%20Big%20Data%20Technologies%20for%20Next%20Generation%20Healthcare.pdf例如。
答案1
我最初打算提出wget
这个解决方案,但经过进一步研究,我注意到了一些事情:
- PDF 文件不存储在http://www.allitebooks.com(相反,它们位于http://files.allitebooks.com)
- 包含 PDF 的目录是http://file.allitebooks.com/20170102/
- 两者文件.allitebooks我提到的 URL
403 Forbidden
在连接时返回错误
通过访问网站上的电子书页面之一,您可以看到 PDF 下载链接的 URL。您可以使用它下载 PDF,如下所示:
wget http://file.allitebooks.com/20170102/Smart%20Home%20Automation%20with%20Linux%20and%20Raspberry%20Pi,%202%20edition.pdf
但这不是递归的,也没有办法知道什么位于该目录中,而无需检查每个博客文章并复制下载链接。