wget的-N选项有问题

时间:2011-02-11 07:08:49

标签: wget web-scraping

我正在尝试使用wget抓取一个网站。这是我的命令:

wget -t 3 -N -k -r -x

-N表示“如果服务器版本早于本地版本,则不下载文件”。但这不起作用。当我重新开始上述抓取操作时,相同的文件会反复下载 - 即使文件没有更改。

许多下载的网页报道:

最后修改的标题丢失 - 时间戳已关闭。

我已经尝试过抓几个网站,但到目前为止所有网站都试过这个问题。

这是由远程服务器控制的情况吗?他们选择不是这样发送那些时间戳标题吗?如果是这样,我可以做的不多吗?

我知道-NC(没有clobber)选项,但即使服务器文件较新,也会阻止现有文件被覆盖,导致过时的本地数据累积。

由于 德鲁

1 个答案:

答案 0 :(得分:2)

wget -N开关确实有效,但是由于各种原因,许多Web服务器都不会发送Last-Modified标头。例如,动态页面(PHP或任何CMS等)必须主动实现该功能(找出上次修改内容的时间,并发送标题)。有些人这样做,而有些人没有。

确实没有其他可靠的方法来检查文件是否已被更改。