Python 命令列檔案下載器
Python 是一種功能強大的程式語言,它為不同的應用程式提供了許多工具和庫。我們也可以用 Python 建立一個命令列檔案下載器。
命令列下載器用於透過命令列介面或終端手動從網際網路下載檔案,無需使用瀏覽器。
要使用 Python 建立命令列檔案下載器,我們需要兩個庫,分別是 argparse 和 requests。在開始構建此應用程式之前,我們應該具備基本的終端或命令列介面和 Python 語言知識。
安裝
在繼續之前,我們需要在系統中安裝上述提到的庫。確保在開始構建應用程式之前已安裝上述庫。如果已下載,您可以從步驟 2 繼續,否則請從步驟 1 開始,我們可以使用 pip(Python 包管理器)使用以下命令下載並安裝它們。
pip install argparse pip install requests
步驟 1:匯入所需的庫
首先,我們需要建立一個新的 Python 檔案並匯入上述兩個庫 argparse 和 requests。我們可以使用以下程式碼匯入它們:
import requests import argparse
argparse 庫用於處理透過命令列介面傳遞給函式的引數,requests 庫將用於從網際網路下載所需的檔案。
步驟 2:定義下載檔案函式
在第二步中,我們將定義一個 download_file() 函式,該函式將接受兩個引數。第一個是我們要下載的檔案的 URL,第二個是我們儲存檔案的名稱。
def download_file(url, filename):
response = requests.get(url)
with open(filename, "wb") as f:
f.write(response.content)
讓我們看看它是如何工作的。我們使用 requests 庫從作為引數提供的 URL 下載檔案,並將檔案儲存為作為引數給定的名稱。with 語句將負責在檔案正確下載後關閉檔案。
步驟 3:解析命令列引數
使用者將透過命令本身提供引數,因此我們必須使用 argparse 庫。這將直接從使用者透過命令列獲取引數,而不是將其作為函式的引數傳遞。
parser = argparse.ArgumentParser()
parser.add_argument("--url", help="provide URL", required=True)
parser.add_argument("--filename", help="Give file name", required=True)
args = parser.parse_args()
“–url” 引數是必需的,用於指定要下載的檔案的 URL。“—filename” 引數也是必需的,用於指定要儲存下載檔案的名稱。
步驟 4:下載檔案
將命令列引數解析到後,我們可以使用 download_file 函式從作為引數提供的 URL 下載檔案,並將其儲存為作為引數給定的檔名。
download_file(args.url, args.filename)
print("File downloaded successfully.")
此程式碼將呼叫 download_file 函式,從作為引數給定的 URL 下載檔案,並在檔案下載完成後在終端列印“檔案下載成功”。
示例
以下是 Python 命令列檔案下載器的完整程式碼:
import requests
import argparse
def download_file(url, filename):
response = requests.get(url)
with open(filename, "wb") as f:
f.write(response.content)
parser = argparse.ArgumentParser()
parser.add_argument("--url", help="provide URL", required=True)
parser.add_argument("--filename", help="Give file name", required=True)
args = parser.parse_args()
download_file(args.url, args.filename)
print("File downloaded successfully.")
要使用此檔案下載器,只需從命令列執行它並指定 URL 和檔名:
python file_downloader.py --url https://example.com/file.txt --filename file.txt
此命令執行後,將從提供的 URL 下載文件,並將其另存為 document.txt,儲存在執行命令的同一目錄中。
結論
在本文中,我們討論瞭如何使用 Python 構建命令列檔案下載器。我們使用了兩個庫 argparse 和 requests 來建立此命令列檔案下載器。透過此應用程式,我們可以透過命令列介面在沒有瀏覽器的情況下從網際網路下載任何檔案。我們瞭解了建立命令列檔案下載器所需的所有步驟。此程式碼可以自定義以滿足特定需求,例如新增進度條或錯誤處理。
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP