Wget用法、參數解釋的比較好的一個文章

一個語句就可以下載cvpr2016的全部論文:

wget -c -N ?--no-clobber --convert-links --random-wait -r -p -E -e robots=off -U mozilla http://www.cv-foundation.org/openaccess/CVPR2016.py

其中,-c表示斷點續傳;-N表示已經下載的內容不再重復下載。

_______________________________________________________________________________________

標簽:?服務器filelisturlhtml網絡
?分類:
linux(39)?
wget是一個從網絡上自動下載文件的自由工具。它支持HTTP,HTTPS和FTP協議,可以使用HTTP代理.?
所謂的自動下載是指,wget可以在用戶退出系統的之后在后臺執行。這意味這你可以登錄系統,啟動一個wget下載任務,然后退出系統,wget將在后臺執行直到任務完成,相對于其它大部分瀏覽器在下載大量數據時需要用戶一直的參與,這省去了極大的麻煩。?
wget 可以跟蹤HTML頁面上的鏈接依次下載來創建遠程服務器的本地版本,完全重建原始站點的目錄結構。這又常被稱作"遞歸下載"。在遞歸下載的時候,wget 遵循Robot Exclusion標準(/robots.txt). wget可以在下載的同時,將鏈接轉換成指向本地文件,以方便離線瀏覽。?
wget 非常穩定,它在帶寬很窄的情況下和不穩定網絡中有很強的適應性.如果是由于網絡的原因下載失敗,wget會不斷的嘗試,直到整個文件下載完畢。如果是服務器打斷下載過程,它會再次聯到服務器上從停止的地方繼續下載。這對從那些限定了鏈接時間的服務器上下載大文件非常有用。?
wget的常見用法
wget雖然功能強大,但是使用起來還是比較簡單的,
基本的語法是:wget [參數列表] "URL" 用""引起來可以避免因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 使用或者關閉代理。
??? wget還有很多有用的功能,需要用戶去挖掘。




wget的使用格式?
Usage: wget [OPTION]... [URL]...
* 用wget做站點鏡像:?
wget -r -p -np -k?http://dsec.pku.edu.cn/~usr_name/
# 或者
wget -m?http://dsec.pku.edu.cn/~usr_name/
* 在不穩定的網絡上下載一個部分下載的文件,以及在空閑時段下載?
wget -t 0 -w 31 -c?http://dsec.pku.edu.cn/BBC.avi?-o down.log &
# 或者從filelist讀入要下載的文件列表
wget -t 0 -w 31 -c -B?ftp://dsec.pku.edu.cn/linuxsoft?-i filelist.txt -o down.log &
上面的代碼還可以用來在網絡比較空閑的時段進行下載。我的用法是:在mozilla中將不方便當時下載的URL鏈接拷貝到內存中然后粘貼到文件filelist.txt中,在晚上要出去系統前執行上面代碼的第二條。?
* 使用代理下載?
wget -Y on -p -k?https://sourceforge.net/projects/wvware/
代理可以在環境變量或wgetrc文件中設定?
# 在環境變量中設定代理
export PROXY=http://211.90.168.94:8080/
# 在~/.wgetrc中設定代理
http_proxy =?http://proxy.yoyodyne.com:18023/
ftp_proxy =?http://proxy.yoyodyne.com:18023/


wget各種選項分類列表
* 啟動?
? -V,? --version?????????? 顯示wget的版本后退出
? -h,? --help????????????? 打印語法幫助
? -b,? --background??????? 啟動后轉入后臺執行
? -e,? --execute=COMMAND?? 執行`.wgetrc'格式的命令,wgetrc格式參見/etc/wgetrc或~/.wgetrc
* 記錄和輸入文件?
? -o,? --output-file=FILE???? 把記錄寫到FILE文件中
? -a,? --append-output=FILE?? 把記錄追加到FILE文件中
? -d,? --debug??????????????? 打印調試輸出
? -q,? --quiet??????????????? 安靜模式(沒有輸出)
? -v,? --verbose????????????? 冗長模式(這是缺省設置)
? -nv, --non-verbose????????? 關掉冗長模式,但不是安靜模式
? -i,? --input-file=FILE????? 下載在FILE文件中出現的URLs
? -F,? --force-html?????????? 把輸入文件當作HTML格式文件對待
? -B,? --base=URL???????????? 將URL作為在-F -i參數指定的文件中出現的相對鏈接的前綴
?????? --sslcertfile=FILE???? 可選客戶端證書
?????? --sslcertkey=KEYFILE?? 可選客戶端證書的KEYFILE
?????? --egd-file=FILE??????? 指定EGD socket的文件名
* 下載?
?????? --bind-address=ADDRESS?? 指定本地使用地址(主機名或IP,當本地有多個IP或名字時使用)
? -t,? --tries=NUMBER?????????? 設定最大嘗試鏈接次數(0 表示無限制).
? -O?? --output-document=FILE?? 把文檔寫到FILE文件中
? -nc, --no-clobber???????????? 不要覆蓋存在的文件或使用.#前綴
? -c,? --continue?????????????? 接著下載沒下載完的文件
?????? --progress=TYPE????????? 設定進程條標記
? -N,? --timestamping?????????? 不要重新下載文件除非比本地文件新
? -S,? --server-response??????? 打印服務器的回應
?????? --spider???????????????? 不下載任何東西
? -T,? --timeout=SECONDS??????? 設定響應超時的秒數
? -w,? --wait=SECONDS?????????? 兩次嘗試之間間隔SECONDS秒
?????? --waitretry=SECONDS????? 在重新鏈接之間等待1...SECONDS秒
?????? --random-wait??????????? 在下載之間等待0...2*WAIT秒
? -Y,? --proxy=on/off?????????? 打開或關閉代理
? -Q,? --quota=NUMBER?????????? 設置下載的容量限制
?????? --limit-rate=RATE??????? 限定下載輸率
* 目錄?
? -nd? --no-directories??????????? 不創建目錄
? -x,? --force-directories???????? 強制創建目錄
? -nH, --no-host-directories?????? 不創建主機目錄
? -P,? --directory-prefix=PREFIX?? 將文件保存到目錄 PREFIX/...
?????? --cut-dirs=NUMBER?????????? 忽略 NUMBER層遠程目錄
* HTTP 選項?
?????? --http-user=USER????? 設定HTTP用戶名為 USER.
?????? --http-passwd=PASS??? 設定http密碼為 PASS.
? -C,? --cache=on/off??????? 允許/不允許服務器端的數據緩存 (一般情況下允許).
? -E,? --html-extension????? 將所有text/html文檔以.html擴展名保存
?????? --ignore-length?????? 忽略 `Content-Length'頭域
?????? --header=STRING?????? 在headers中插入字符串 STRING
?????? --proxy-user=USER???? 設定代理的用戶名為 USER
?????? --proxy-passwd=PASS?? 設定代理的密碼為 PASS
?????? --referer=URL???????? 在HTTP請求中包含 `Referer: URL'頭
? -s,? --save-headers??????? 保存HTTP頭到文件
? -U,? --user-agent=AGENT??? 設定代理的名稱為 AGENT而不是 Wget/VERSION.
?????? --no-http-keep-alive? 關閉 HTTP活動鏈接 (永遠鏈接).
?????? --cookies=off???????? 不使用 cookies.
?????? --load-cookies=FILE?? 在開始會話前從文件 FILE中加載cookie
?????? --save-cookies=FILE?? 在會話結束后將 cookies保存到 FILE文件中
* FTP 選項?
? -nr, --dont-remove-listing?? 不移走 `.listing'文件
? -g,? --glob=on/off?????????? 打開或關閉文件名的 globbing機制
?????? --passive-ftp?????????? 使用被動傳輸模式 (缺省值).
?????? --active-ftp??????????? 使用主動傳輸模式
?????? --retr-symlinks???????? 在遞歸的時候,將鏈接指向文件(而不是目錄)
* 遞歸下載?
? -r,? --recursive????????? 遞歸下載--慎用!
? -l,? --level=NUMBER?????? 最大遞歸深度 (inf 或 0 代表無窮).
?????? --delete-after?????? 在現在完畢后局部刪除文件
? -k,? --convert-links????? 轉換非相對鏈接為相對鏈接
? -K,? --backup-converted?? 在轉換文件X之前,將之備份為 X.orig
? -m,? --mirror???????????? 等價于 -r -N -l inf -nr.
? -p,? --page-requisites??? 下載顯示HTML文件的所有圖片
* 遞歸下載中的包含和不包含(accept/reject)?
? -A,? --accept=LIST??????????????? 分號分隔的被接受擴展名的列表
? -R,? --reject=LIST??????????????? 分號分隔的不被接受的擴展名的列表
? -D,? --domains=LIST?????????????? 分號分隔的被接受域的列表
?????? --exclude-domains=LIST?????? 分號分隔的不被接受的域的列表
?????? --follow-ftp???????????????? 跟蹤HTML文檔中的FTP鏈接
?????? --follow-tags=LIST?????????? 分號分隔的被跟蹤的HTML標簽的列表
? -G,? --ignore-tags=LIST?????????? 分號分隔的被忽略的HTML標簽的列表
? -H,? --span-hosts???????????????? 當遞歸時轉到外部主機
? -L,? --relative?????????????????? 僅僅跟蹤相對鏈接
? -I,? --include-directories=LIST?? 允許目錄的列表
? -X,? --exclude-directories=LIST?? 不被包含目錄的列表
? -np, --no-parent????????????????? 不要追溯到父目錄
問題
在遞歸下載的時候,遇到目錄中有中文的時候,wget創建的本地目錄名會用URL編碼規則處理。如"天網防火墻"會被存為"%CC%EC%CD%F8%B7%C0%BB%F0%C7%BD",這造成閱讀上的

轉載于:https://www.cnblogs.com/leoking01/p/6972923.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/281770.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/281770.shtml
英文地址,請注明出處:http://en.pswp.cn/news/281770.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

.NET VS智能提示漢化 (.Net6)

先上現成的.net6漢化文件,可以手動下載后參照 [如何為 .NET 安裝本地化的 IntelliSense 文件 ](https://learn.microsoft.com/zh-cn/dotnet/core/install/localized-intellisense)進行安裝。或者使用后文的工具進行自動安裝。無對照英文在前中文在前漢化內容來自 官…

go 返回mysql數組_Go基礎之--操作Mysql(一)

關于標準庫database/sqldatabase/sql是golang的標準庫之一,它提供了一系列接口方法,用于訪問關系數據庫。它并不會提供數據庫特有的方法,那些特有的方法交給數據庫驅動去實現。database/sql庫提供了一些type。這些類型對掌握它的用法非常重要…

Vue CLI 3開發中屏蔽煩人的EsLint錯誤

問題 Vue開發中,特別是當你閱讀分析別人的其中早期版本的Vue代碼時往往會遭遇到滿屏幕的煩人的EsLint錯誤。有關EsLint這個工具的作用不再贅述。查閱網上參考文檔,大多是針對早起版本Vue CLI工具項目的,在我最新使用的Vue CLI 3生成的工程中根…

pyinstaller---將py文件打包成exe

pyinstaller可將Python腳本打包成可執行程序,使在沒有Python環境的機器上運行。 1.pyinstaller在windows下的安裝 直接在命令行用pip安裝 pyinstaller, 在windows下,pyinstaller需要PyWin32的支持。當用pip安裝pyinstaller時未找到PyWin32&am…

老人尋求到一名程序員,用2W行代碼給自己打造了一幅肖像畫

今天翻墻看了下國外的論壇,看到了一位版主給一位老人描繪肖像畫的文章,不得不說這位大佬是真的厲害,近20000行代碼,而且還畫的很像,像小編我這種手殘黨,用筆也不能畫出來,不得不服,今…

一題多解,ASP.NET Core應用啟動初始化的N種方案[下篇]

[接上篇]“天下大勢,分久必合,合久必分”,ASP.NET應用通過GenericWebHostService這個承載服務被整合到基于IHostBuilder/IHost的服務承載系統中之后,也許微軟還是意識到Web應用和后臺服務的承載方式還是應該加以區分,于…

java jpa 模糊查詢_JPA 以SQL實現分頁不模糊查詢(參數可能為空)

repository代碼:package com.fancy.miniflow.repository;import java.util.List;import org.springframework.data.jpa.repository.JpaRepository;import org.springframework.data.jpa.repository.JpaSpecificationExecutor;import org.springframework.data.jpa.repository.Q…

GitHub服務中斷24小時11分鐘事故分析報告\n

上周,GitHub經歷了一次事故,導致服務降級24小時11分鐘。雖然平臺的某些部分不受事故影響,但仍然有多個內部系統受到了影響,向用戶顯示了過時且不一致的內容。所幸沒有用戶數據丟失,但針對幾秒鐘數據庫寫入的手動調整工…

8 旋轉數組的最小數字

輸入一個遞增排序數組的一個旋轉&#xff0c;輸出旋轉數組的最小元素例如1,2,3,4,5的一個旋轉可以為3,4,5,1,2把一個數組的最開始若干個元素搬到數組的末尾&#xff0c;稱之為數組的旋轉 輸出旋轉數組的最小元素 C: 1 class Solution {2 public:3 int minInOrder(vector<…

軟考新思維--2017年上半年信息系統項目管理師上午試題分析與答案(試題6-10題)...

2017年上半年信息系統項目管理師上午試題分析與答案&#xff08;試題1-5題&#xff09; 6.&#xff08;&#xff09;不是獲取需求的方法。A、問卷調查B、會議討論C、獲取原型D、決策分析【軟考新思維】需求是獲取的得來的&#xff0c;不是決策得來的。 先是獲取需求&#xff0c…

php 合并 字符串_PHP如何去重合并字符串

本篇文章主要給大家介紹PHP如何去重合并字符串。推薦教程&#xff1a;《PHP教程》對于PHP學習者來說&#xff0c;合并多個字符串&#xff0c;應該并不是很難。但是如果這多個字符串中&#xff0c;有相同元素&#xff0c;當我們想要合并他們并且要使其值具有唯一值。也就是說合并…

10.31T4 HAOI2010最長公共子序列 計數+容斥原理

2775 -- 【HAOI2010】最長公共子序列 Description 字符序列的子序列是指從給定字符序列中隨意地&#xff08;不一定連續&#xff09;去掉若干個字符&#xff08;可能一個也不去掉&#xff09;后所形成的字符序列。令給定的字符序列X“x0&#xff0c;x1&#xff0c;…&#xff0…

軟概(lesson 2):課堂測試

一、測試題目 二、完成過程 1.設計思想 ①連接mysql數據庫 ②設計user類&#xff0c;增加參數 ③設計add類&#xff0c;向數據庫內增加內容 ④設計addInput頁面&#xff0c;完成錄入操作 ⑤設計add頁面&#xff0c;接收錄入的參數&#xff0c;并調用add類函數 2.源代碼 user.ja…

谷歌Gboard輸入法新增“無痕模式”:僅在Chrome隱身窗口中適用

據外媒Android Police報道&#xff0c;如大家所知道的&#xff0c;Chrome瀏覽器中的“隱身模式”是為了防止你的私密瀏覽記錄被其他人看到&#xff0c;但是&#xff0c;在這種模式下&#xff0c;你的輸入法鍵盤依然會記住你輸入的短語&#xff0c;為了阻止你的鍵盤在Chrome隱身…

php兩個數組融合,php合并兩個數組的方式有哪些

1、arrary_merge示例代碼&#xff1a;$arr1 array(1, 2, 3, 4, 5);$arr2 array(1, 2, 6, 7, 8, 9, 10);$result1 array_merge($arr1, $arr2);$arr3 array("name" > "itbsl", "age" > 13, "sex" > "Male");$arr…

最近對latin-1這個字符集產生了不少好感

【簡介】 最近我要解析一個數據庫中間件的日志、這個中間件會在日志中記錄SQL發往的后臺DB ,執行耗時&#xff0c;對應的SQL&#xff1b;中間件直接把SQL寫到 了日志中去&#xff0c;并沒有對SQL進行適當的編碼轉換&#xff1b;理想情況下這個也不會有什么問題&#xff0c;不幸…

面象對象設計原則之六:迪米特原則(LeastKnowledge Principle, LKP)

迪米特法則來自于1987年美國東北大學(Northeastern University)一個名為“Demeter”的研究項目。迪米特法則又稱為最少知識原則(LeastKnowledge Principle, LKP)&#xff0c;其定義如下&#xff1a; 迪米特法則(Law of Demeter, LoD)&#xff1a;一個軟件實體應當盡可能少地與…

php symfony urlmatcher-gt;match,symfony路由組件(The Routing Component)

The Routing component 把HTTP request轉換為一系列的配置參數.安裝你有兩種方式來安裝這個組件:通過 Composer (symfony/routing on Packagist);使用官方的 Git repository (https://github.com/symfony/Routing)。然后, 需要Composer把vendor/autoload.php 這個文件提供 給 a…

R升級和包更新

1.R升級 # 安裝包"installr" install.packages("installr") # 導入包 library(installr) # 升級 updateR() 2.包升級 # 包升級 update.packages() 3.安裝包 # 選擇鏡像 options(reposstructure(c(CRAN"https://cran.cnr.berkeley.edu/"))) # 安裝…

其他對象的表單

1.textarea&#xff1a; textarea對象就想是input對象中的text樣式的表單&#xff0c;只不過是擴展過的text樣式表單。它可以通過行&#xff08;rows&#xff09;屬性和列&#xff08;cols&#xff09;屬性來編輯文本域的大小。最常見于留言板、論壇時回帖時的文本框等。 <h…