使用 Wget 递归抓取站点并下载图像

Cer*_*rin 14 linux script bash wget web-crawler

您如何指示 wget 递归抓取网站并仅下载某些类型的图像?

我尝试使用它来抓取网站并且只下载 Jpeg 图像:

wget --no-parent --wait=10 --limit-rate=100K --recursive --accept=jpg,jpeg --no-directories http://somedomain/images/page1.html
Run Code Online (Sandbox Code Playgroud)

然而,即使 page1.html 包含数百个指向子页面的链接,这些链接本身具有指向图像的直接链接,但 wget 会报告诸如“删除 subpage13.html 因为它应该被拒绝”之类的内容,并且从不下载任何图像,因为没有一个直接链接到从起始页。

我假设这是因为我的 --accept 被用于指导抓取和过滤内容下载,而我希望它只用于指导内容下载。如何让 wget 抓取所有链接,但只下载具有某些扩展名(如 *.jpeg)的文件?

编辑:另外,有些页面是动态的,是通过 CGI 脚本生成的(例如 img.cgi?fo9s0f989wefw90e)。即使我将 cgi 添加到我的接受列表(例如 --accept=jpg,jpeg,html,cgi),这些仍然总是被拒绝。有没有解决的办法?

小智 -1

尝试添加--page-requisites选项