首頁 >後端開發 >Python教學 >在Python中透過HTTP下載文件

在Python中透過HTTP下載文件

WBOY
WBOY轉載
2023-08-27 21:25:121291瀏覽

在 Python 中,我們使用 Python 內建程式庫(例如 urllib、requesthttplib)透過 HTTP 下載檔案。 HTTP 是一種超文本傳輸協議,用於透過萬維網存取資料。 HTTP 請求通常由用戶端(例如 Web 瀏覽器)發起,並傳送至託管所請求資源的伺服器。請求通常包括方法(例如 GET 或 POST)、標識資源的統一資源定位符 (URL) 以及提供有關請求的附加資訊的可選標頭。在本文中,我們將了解如何使用 urllib 和 request 函式庫來下載檔案。

使用 urllib 下載檔案

Urllib 包含 urllib.request 等子模組,可用於輕鬆從網路下載檔案。 urllib.request 將檔案的 URL 和您想要為下載的檔案提供的檔案名稱作為輸入。

文法

urllib.request.urlretrieve(URL, filename)

這裡urllib.request.urlretrieve有兩個參數。一個是網路上文件的 URL,另一個是您要為下載的檔案指定的檔案名稱。

範例

在下面的範例中,使用 urllib 函式庫透過 HTTP 下載文件,首先導入 urllib.request 模組,然後呼叫 urllib.request 模組的 urlretrive 函式。傳遞要下載的文件的 URL 以及下載文件後要保留的文件名。

如果傳遞了無效的 URL 或檔案不可下載,則會引發例外狀況。

import urllib.request
from PIL import Image

url = 'https://www.python.org/static/img/python-logo.png'
filename = 'python-logo.png'

urllib.request.urlretrieve(url, filename)

with open(filename, 'rb') as f:
   image = Image.open(f)
   image.show()

輸出

在Python中透過HTTP下載文件

#使用 requests 庫下載檔案

requests 函式庫使用其 get 方法在 Python 中發出 HTTP 請求。它只是將文件的 URL 作為輸入,發出下載文件的 get 請求,並返回下載的文件作為回應。

文法

requests.get(URL)

這裡的requests.get()方法中的URL是要透過網路下載的檔案的URL。

範例

在下面的範例中,我們匯入 requests 庫並指定要下載的文件的 URL 以及要為下載的文件指定的名稱。然後,我們匯入 requests 庫並使用 requests.get() 方法下載 Python 標誌。此方法傳回一個包含文件內容的回應對象。最後,我們讀取下載的檔案並將其列印在螢幕上。

import requests

url = 'https://www.python.org/static/img/python-logo.png'
filename = 'python-logo.png'

response = requests.get(url)

from PIL import Image

with open(filename, 'rb') as f:
   image = Image.open(f)
   image.show()

輸出

在Python中透過HTTP下載文件

#結論

在本文中,我們討論如何在 Python 中使用 Python 內建程式庫(如 urllib 和 requests 函式庫)透過 HTTP 下載檔案。 requests函式庫提供了更高層次的接口,比urllib更友善使用者。 requests 函式庫提供了比 urllib 函式庫更簡單的下載檔案的方法。任何程式庫都可用於在 Python 中下載檔案。

以上是在Python中透過HTTP下載文件的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除