--convert-linksが指定されていると、wgetはURLを正しく変換できません。

--convert-linksが指定されていると、wgetはURLを正しく変換できません。

マニュアルページによる--convert-linksと、wgetを指定するとき:

ダウンロードが完了すると、ドキュメント内のリンクはローカルビューに合わせて変換されます。 [...] Wgetは、ダウンロードが完了するまでどのリンクがダウンロードされたかを知りません。したがって、-kによって実行される操作は、すべてのダウンロードが終了したときに実行されます。

私が似たようなことをしているとしましょうwget --convert-links http://stackoverflow.com。このサイトは大きすぎるため、すべてをダウンロードすることは決して完了しない可能性があります。この場合、私のリンクは決して変換されません。

このコマンドをローカルで実行すると、同じファイルを含むディレクトリが/tmp/wget表示されます。stackoverflow.comただし、インデックスページをロードしてツアーリンクの上にマウスを移動すると(実際のファイルの場所)、代わりに移動されます。index.htmltour.htmlfile:///tour.htmlfile:///tmp/wget/stackoverflow.com/tour.html

ベストアンサー1

唯一の問題は次のとおりです。

この場合、私のリンクは決して変換されません。

私はそうではありません。限られたサイズのパーティションでこれを試して、スペースが足りなくなったときにwgetが何をするかを確認できます(またはその--quotaオプションを使用すると、おそらくそれでも一緒に変換されます)。

なぜこんな戦略なのか理解できますね。これが即座に実行される場合は、ダウンロードするすべてのプロジェクトのすべての文書を再確認する必要があります。考慮する:

  • A.htmlがダウンロードされました。
  • B.htmlがダウンロードされたので、A.htmlのリンクを確認してください。
  • C.htmlがダウンロードされたので、A.htmlとB.htmlのリンクを確認してください。
  • ...など。

代わりに、おそらくリストを維持し、最後にすべてのファイルを検索してください。一度。もちろん、すべてのリンクのインデックスを維持すると、即時のアプローチが向上する可能性がありますが、まだ速度がはるかに遅くなると思います。ディスクにもっと頻繁に書き込む必要があります。 ファイルを保存してから最後に一度変更するのではなく、数十から数百回書き直すことがよくあります。

おすすめ記事