wget 无法下载带有 304 Not Modified 的文件

wget 无法下载带有 304 Not Modified 的文件

我正在尝试使用递归下载网站wget

wget --recursive --page-requisites --no-parent --convert-links -e robots=off --domains orteil.dashnet.org orteil.dashnet.org/cookieclicker

它只下载某些文件,而保留其他文件。经过仔细检查,我发现它不会下载返回的文件304 Not Modified

该文件返回304 Not Modified到 Inspector 中并且不会被下载。 文件返回 304

该文件返回到200 OKInspector 中并被下载。 返回 200 的文件

我猜这是因为wget假设它不需要下载带有304.我怎样才能强制它下载文件?

答案1

304 Not Modified 由服务器发送以响应If-Modified-Since标头。它应该告诉客户他拥有的副本是最新的。依次发送此标头是wget因为该文件已存在于输出目录中并带有一些时间戳。

因此,强制下载的明显方法是从空输出目录开始。

您可能会遇到问题,因为您正在使用--convert-links而不是--backup-converted,因为--convert-links更改了文件上的时间戳(从而使其看起来更新)。

编辑:在wget比我测试更近的s中,还可以添加--no-if-modified-since

相关内容