可以通過多種方式從 Web 下載資源。除了瀏覽器之外,還可以使用 wget 等工具下載資源,尤其是從 Web 下載資源。本文將向您展示如何在 Mac 上下載和使用 wget。
wget 是什麼(它有什麼用)?
對於無知者, 獲得 是一個開源的非交互式命令行實用程序,可幫助您從指定的 URL 下載資源。 wget 是非交互式的,因此它甚至可以在您登錄之前在後台運行。
這是 GNU 團隊的一個項目,如果您的互聯網連接不佳,它會很有用。這意味著即使在其他非最佳條件下它也是穩健的。
安裝 wget 後,運行命令並指定保存文件的位置。這是如何做到這一點的。
如何在 Mac 上安裝 wget
在安裝 wget 之前,您需要一個包管理器。 wget 不隨 macOS 提供,但可以使用以下命令下載和安裝: 自製 – 最佳 Mac 包管理器。
1. 下載並安裝 Homebrew
要安裝 Homebrew,首先打開一個終端窗口並運行以下命令:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
這是 curl
使用該命令下載 macOS 上預安裝的 Ruby 安裝中包含的文件。
按 Enter 運行命令,安裝程序將顯示有關將要發生的事情的明確詳細信息。
確認後,安裝程序將啟動。
2.從命令行安裝wget
然後使用 Homebrew 安裝 wget。從終端再次運行它。
brew install wget

安裝程序實時更新進度。此處無需執行任何操作。該過程簡單且自動化。但如果您已經安裝了 Homebrew,請務必安裝。 brew update
獲取所有公式的最新副本。
在終端中出現新提示後,您可以使用 wget 將資源下載到您的 Mac。
如何使用 wget 下載網頁資源
要使用 wget 從 URL 下載遠程資源,您應該使用以下結構:
wget -O path/to/local.copy http://example.com/url/to/download.html
這會將 URL 指定的文件保存到您機器上的指定位置。

排除在外 -O
如果為“flag”,則下載位置將是當前工作目錄。

例如,假設您將網頁下載到“下載”文件夾。
wget -O /Users/[your-username]/Downloads/status.html https://www.w3.org/Status.html
然而,沒有 -O
標誌,目錄應該改變(cd downloads
) 在運行 wget 之前:
wget /Users/[your-username]/Downloads/status.html https://www.w3.org/Status.html
將顯示有關下載進度的完整詳細信息。 wget 非常快,但這些信息更像是下載摘要而不是實時更新。
如何下載遞歸目錄
要使用 wget 下載整個目錄樹,您應該使用: -r
/--recursive
什麼時候 -np
/--no-parent
旗幟:
wget -e robots=off -r -np https://www.w3.org/History/19921103-hypertext/hypertext/
這將導致 wget 跟踪在指定目錄中的文檔中找到的所有鏈接。從那裡,它執行整個指定 URL 路徑的遞歸下載。
另請注意 -e robots=off
命令。這忽略了 robots.txt 文件的限制。通常,我們建議禁用 robots.txt 以防止消化下載。
使用 wget 附加標誌
wget 使用了許多其他附加標誌,因此它是一個靈活的工具。如果您的下載有特定要求,這很好。
讓我們關注兩個方面:控制下載過程和創建日誌。
控制 wget 如何下載資源
有許多標誌可以幫助配置下載過程。以下是一些最有用的:
wget -X /absolute/path/to/directory
遠程服務器上的某些目錄被排除在外。wget -nH
刪除“主機名”目錄。換句話說,跳過主域名。例如 wget 跳過www.w3.org
從上一個示例中的文件夾開始,History
而是目錄。wget --cut-dirs=#
在開始下載文件之前跳過 URL 中指定的目錄數。例如,-nH --cut-dirs=1
只需將“ftp.xemacs.org/pub/xemacs/”的指定路徑更改為“/xemacs/”即可減少本地下載中空父目錄的數量。wget -R index.html
/wget --reject index.html
與指定文件名匹配的文件將被跳過。在這種情況下,所有索引文件都被排除在外。星號wget -i file
通配符,例如“*.png”。這將跳過所有帶有 PNG 擴展名的文件。--force-html
在輸入文件中指定目標 URL。此輸入文件必須為 HTML 格式。否則,wget -nc
用於解析 HTML 的標誌。wget --no-clobber
/wget -c
不要覆蓋目標上已存在的文件。wget --continue
/wget -t 10
部分下載的文件將繼續下載。
在失敗之前嘗試下載資源最多 10 次。
wget 不僅控制下載過程,還會創建日誌供以後參考。
調整日誌級別
wget -d
您還可以考慮將以下標誌作為控制使用 wget 時收到的輸出的一部分。wget -o path/to/log.txt
啟用調試輸出。wget -q
啟用日誌輸出到指定目錄,而不是顯示日誌的標準輸出。wget -v
關閉 wget 的所有輸出,包括錯誤消息。wget --no-verbose
顯式啟用 wget 的默認詳細輸出。
日誌消息已關閉,但仍會顯示錯誤消息。
通常,您不會像其他人那樣經常使用這些標誌,因為您想知道在下載過程中發生了什麼。儘管如此,如果您有大量下載並希望確保可以解決問題,那麼記錄或丟失輸出是一種有效的方法。
結論是 雖然您可以使用瀏覽器或其他 GUI 下載網頁和其他資源,但使用命令行可以節省時間。 wget 之類的工具非常強大(比瀏覽器更強大)。 有關 wget 功能的完整描述,您可以:查看 wget 的 GNU 手冊頁。
.
如果 wget 不起作用,則可能是時候診斷 Wi-Fi 連接問題了。 你在 Mac 上使用 wget 下載網絡資源嗎?在下面的評論中分享你的想法!