「最後に変更された」ヘッダーの欠落を回避するにはどうすればよいですか?


12

私はwgetこのように実行しています:

wget --mirror --adjust-extension --convert-links --no-cookies http://tshepang.net -o log-main

これらのメッセージがたくさん表示されます:

Last-modified header missing -- time-stamps turned off.

それは、私がローカルに持っていても、ページが再ダウンロードされ続けることを意味すると思います。

:コマンドミラーを実行するたびに既存のファイルを再ダウンロードする必要がないようにするためです。


あなたはページの所有者ですか(それが本当にtshepang.netである場合)。その場合、WebサーバーはApacheであり、その構成を制御できますか?または、少なくとも.htaccessがオプションのオーバーライドで有効になっていますか?
forcefsck

@forcefsck:いや、サイトはPosterousが運営しています。彼らはすべての投稿を読むためのAPIを持っていますが、それは私にとってこれらのウェブ技術の学習曲線です。
tshepang 2011年

回答:


9

-cパラメータを追加してみましたか?

wgetマニュアルからの抜粋:

-c-続行

Wget 1.7から、空ではないファイルに対して-cを使用し、サーバーがダウンロードの継続をサポートしていないことが判明した場合、Wgetは既存のコンテンツを事実上台無しにする、最初からダウンロードを開始することを拒否します。ダウンロードを最初からやり直したい場合は、ファイルを削除してください。

また、Wget 1.7以降、サーバー上のファイルと同じサイズのファイルに対して-cを使用すると、Wgetはファイルのダウンロードを拒否し、説明メッセージを出力します。サーバー上のファイルがローカルよりも小さい場合にも同じことが起こります(おそらく、最後のダウンロード試行以降にサーバー上で変更されたためと考えられます)---「続行」は意味がないため、ダウンロードは行われません。

コインの反対側では、-cを使用している間、サーバー上でローカルよりも大きいファイルは不完全なダウンロードと見なされ、「(length(remote)-length(local))」バイトのみがダウンロードされ、そこに追加されますローカルファイルの終わり。この動作は特定の場合に望ましい場合があります。たとえば、wget -cを使用して、データコレクションまたはログファイルに追加された新しい部分だけをダウンロードできます。

私の知る限り、すでにダウンロードされた同じサイズのファイルはスキップする必要があります。


ファイルが小さい場合はどうですか?
CJ7 2017
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.