web-dev-qa-db-ja.com

Webディレクトリ全体を再帰的にダウンロードする方法は?

私は多くのフォルダーとファイルを含む多くのサブフォルダーを持つwebディレクトリがあります。

wgetまたはbashを使用してすべてをダウンロードする必要があります。

13
bohohasdhfasdf

試してください:wget -rが機能するかどうかを確認します。

17
AJ.

最善の方法は:

wget -m <url>

これはwget "mirror"の略です:

  -m,  --mirror             shortcut for -N -r -l inf --no-remove-listing.
10
dlamotte
$ wget \
 --recursive \
 --no-clobber \
 --page-requisites \
 --html-extension \
 --convert-links \
 --restrict-file-names=windows \
 --domains website.org \
 --no-parent \
     www.website.org/tutorials/html/

このコマンドは、Webサイトwww.website.org/tutorials/html/をダウンロードします。

オプションは次のとおりです。

  • --recursive:Webサイト全体をダウンロードします。
  • --domains website.org:website.org外のリンクをたどらないでください。
  • --no-parent:tutorials/html /ディレクトリ外のリンクをたどらない。
  • --page-requisites:ページを構成するすべての要素(画像、CSSなど)を取得します。
  • --html-extension:拡張子が.htmlのファイルを保存します。
  • --convert-links:ローカルでオフラインで機能するようにリンクを変換します。
  • --restrict-file-names = windows:Windowsでも機能するようにファイル名を変更します。
  • --no-clobber:既存のファイルを上書きしません(ダウンロードが中断されて再開された場合に使用されます)。

ソースへのリンク

または、Ask Ubuntuの 解決策を試してください。

9
boucekv

wget --recursive(または何でも)がうまくいきませんでした(私はCentOSを使っています)。 lftpやった:

 lftp -c "open http://your.server/path/to/directory/; mirror"
6
Keshav

Wget Recursive Retrieval を参照してください。

wget -r -l 5 -O whatever http://example.com/
0
glomad

あなたはウェブディレクトリを持っていますか?リモートマシン上にあり、HTTP経由でのみアクセスできますか、それともシェルアクセスがありますか? bashプロンプトからwgetを使用するつもりでない限り、bashについての言及はシェルアクセスを意味します。

Wgetは必ずしも非常に効率的ではないため、Webディレクトリが置かれているマシンへのShellアクセスがあり、それをダウンロードしたい場合は、これを行うことができます

$ tar cjf webdir.tar.bz2 webdir 

次に、ftpまたはscpでアーカイブを転送します。

0
Duncan

FTPアカウントを持っている場合は、次のことも試すことができます。

lftp USER:PASSWORD@FTPSERVER -e "mirror&&exit"
0
Janez