1. 程式人生 > >wget for windows 基本使用方法

wget for windows 基本使用方法

網路使用者有時候會遇到需要下載一批檔案的情況,有時甚至需要把整個網站下載下來或者製作網站的映象。利用wget工具,也可以實現這種功能。

wget是一個命令列工具,用來下載網路檔案或者整個網站,它具有自動重試、斷點續傳、支援代理伺服器等等強大的功能。

wget是在Linux下開發的開放原始碼的軟體,作者是 Hrvoje Niksic,後來被移植到包括Windows在內的各個平臺上。

wget雖然功能強大,但是使用起來還是比較簡單的,基本的語法是:wget [引數列表] URL。下面就結合具體的例子來說明一下wget的用法。

1、下載整個http或者ftp站點

wget http://place.your.url/here

這個命令可以將http://place.your.url/here 首頁下載下來。使用-x會強制建立伺服器上一模一樣的目錄,如果使用-nd引數,那麼伺服器上下載的所有內容都會加到本地當前目錄。

wget -r http://place.your.url/here

這個命令會按照遞迴的方法,下載伺服器上所有的目錄和檔案,實質就是下載整個網站。這個命令一定要小心使用,因為在下載的時候,被下載網站指向的所有地址同樣會被下載,因此,如果這個網站引用了其他網站,那麼被引用的網站也會被下載下來!基於這個原因,這個引數不常用。可以用-l number引數來指定下載的層次。例如只下載兩層,那麼使用-l 2。

要是您想製作映象站點,那麼可以使用-m引數,

例如:

wget -m http://place.your.url/here

這時wget會自動判斷合適的引數來製作映象站點。此時,wget會登入到伺服器上,讀入robots.txt並按robots.txt的規定來執行。

2、斷點續傳

當檔案特別大或者網路特別慢的時候,往往一個檔案還沒有下載完,連線就已經被切斷,此時就需要斷點續傳。wget的斷點續傳是自動的,只需要使用-c引數,

例如:

wget -c http://the.url.of/incomplete/file

引數說明:

使用斷點續傳要求伺服器支援斷點續傳。

-t引數表示重試次數,例如需要重試100次,那麼就寫-t 100,如果設成-t 0,那麼表示無窮次重試,直到連線成功。

-T引數表示超時等待時間,例如-T 120,表示等待120秒連線不上就算超時。

3、批量下載

如果有多個檔案需要下載,那麼可以生成一個檔案,把每個檔案的URL寫一行,例如生成檔案download.txt,

然後用命令:

wget -i download.txt

這樣就會把download.txt裡面列出的每個URL都下載下來。(如果列的是檔案就下載檔案,如果列的是網站,那麼下載首頁)

4、選擇性的下載

可以指定讓wget只下載一類檔案,或者不下載什麼檔案。

例如:

wget -m –reject=gif http://target.web.site/subdirectory

表示下載 http://target.web.site/subdirectory,但是忽略gif檔案。–accept=LIST 可以接受的檔案型別,–reject=LIST拒絕接受的檔案型別。

5、密碼和認證

wget只能處理利用使用者名稱/密碼方式限制訪問的網站,可以利用兩個引數:

–http-user=USER設定HTTP使用者

–http-passwd=PASS設定HTTP密碼

對於需要證書做認證的網站,就只能利用其他下載工具了,例如curl。

6、利用代理伺服器進行下載

如果使用者的網路需要經過代理伺服器,那麼可以讓wget通過代理伺服器進行檔案的下載。此時需要在當前使用者的目錄下建立一個.wgetrc檔案。

檔案中可以設定代理伺服器:

http-proxy = 111.111.111.111:8080
ftp-proxy = 111.111.111.111:8080

分別表示http的代理伺服器和ftp的代理伺服器。

如果代理伺服器需要密碼則使用如下這兩個引數:

–proxy-user=USER設定代理使用者
–proxy-passwd=PASS設定代理密碼

使用引數–proxy=on/off 使用或者關閉代理。

7、下載特定檔案型別的檔案用wget -r -A

你可以用此方法下載一下檔案:

~從一個網站下載所有圖片
~從一個網站下載所有視訊
~從一個網站下載所有PDF檔案

wget -r -A.pdf http://url-to-webpage-with-pdfs/

8、用wget實現FTP下載

匿名FTP下載用

wget ftp-url

有使用者名稱和密碼的FTP下載

wget --ftp-user=USERNAME --ftp-password=PASSWORD DOWNLOAD-URL