web-dev-qa-db-ja.com

wgetを使用してWebサイトからすべてのファイル(HTML以外)をダウンロードする方法

wgetを使用してWebサイトからすべてのファイルを取得する方法

HTML、PHP、ASPなどのWebページファイル以外のすべてのファイルが必要です。

147
Aniruddhsinh

特定のファイル拡張子をフィルタリングするには:

wget -A pdf,jpg -m -p -E -k -K -np http://site/path/

あるいは、あなたが長いオプション名を好むならば:

wget --accept pdf,jpg --mirror --page-requisites --adjust-extension --convert-links --backup-converted --no-parent http://site/path/

これはサイトをミラーリングしますが、jpgまたはpdf拡張子のないファイルは自動的に削除されます。

240
Zsolt Botykai

これで全体というWebサイトがダウンロードされました。

wget --no-clobber --convert-links --random-wait -r -p -E -e robots=off -U mozilla http://site/path/
79
izilotti
wget -m -p -E -k -K -np http://site/path/

manページこれらのオプションが何をするのか教えてくれます。

wgetはリンクをたどるだけです。もしインデックスページからファイルへのリンクがなければ、wgetはその存在を知らないのでダウンロードしません。すなわち。すべてのファイルがWebページまたはディレクトリインデックスにリンクされていると便利です。

62
Jesse

私は Omekaのテーマページ からリンクされているZipファイルをダウンロードしようとしていました - かなり似たようなタスク。これは私のために働いた:

wget -A Zip -r -l 1 -nd http://omeka.org/add-ons/themes/
  • -A:Zipファイルのみを受け入れます
  • -r:再帰
  • -l 1:1レベル深い(つまり、このページから直接リンクされているファイルのみ)
  • -nd:ディレクトリ構造を作成せずに、すべてのファイルをこのディレクトリにダウンロードするだけです。

-k-K-Eなどのオプションを使用したすべての回答は、ローカルページを作成するためのHTMLページの書き換え、.phpファイルの名前変更などに関する質問としては、実際にはよく理解できていません。関係ありません。

文字通りすべてのファイルを取得するには除く.html etc:

wget -R html,htm,php,asp,jsp,js,py,css -r -l 1 -nd http://yoursite.com
22
Steve Bennett

あなたが試すことができます:

wget --user-agent=Mozilla --content-disposition --mirror --convert-links -E -K -p http://example.com/

また追加することができます:

-A pdf,ps,djvu,tex,doc,docx,xls,xlsx,gz,ppt,mp4,avi,Zip,rar

特定の拡張子を受け入れる、または特定の拡張子のみを拒否する

-R html,htm,asp,php

または特定の分野を除外するには

-X "search*,forum*"

ロボット用にファイルが無視されている場合(検索エンジンなど)、-e robots=offも追加する必要があります。

7
kenorb

これを試して。それはいつも私のために働きます

wget --mirror -p --convert-links -P ./LOCAL-DIR WEBSITE-URL
5
Suneel Kumar
wget -m -A * -pk -e robots=off www.mysite.com/

これはすべての種類のファイルをローカルにダウンロードし、htmlファイルからそれらを指すでしょう、そしてそれはrobotsファイルを無視します

Windowsシステムではwgetを取得するために

  1. ダウンロード Cygwin
  2. ダウンロード GnuWin32
3
ebinx

これは私のために働く:

wget -r -np http://yoursite.com/path/
0
Carlo Carandang