首頁 > 後端開發 > Python教學 > 如何使用 Python 的請求模組修復映像下載問題?

如何使用 Python 的請求模組修復映像下載問題?

Mary-Kate Olsen
發布: 2024-12-21 08:24:11
原創
163 人瀏覽過

How to Fix Image Download Issues Using Python's Requests Module?

使用請求模組對影像下載進行故障排除

問題:

問題:
r = requests.get(settings.STATICMAP_URL.format(**data))
if r.status_code == 200:
    img = r.raw.read()
    with open(path, 'w') as f:
        f.write(img)
登入後複製

試試載映像時使用Python中的Requests模組,程式碼如下失敗:

您可以幫忙辨識問題並提出解決方案嗎?

答案:

使用請求模組下載影像,您可以使用 response.raw 檔案物件或迭代回應。以下是方法:

import requests
import shutil

r = requests.get(settings.STATICMAP_URL.format(**data), stream=True)
if r.status_code == 200:
    with open(path, 'wb') as f:
        r.raw.decode_content = True
        shutil.copyfileobj(r.raw, f)
登入後複製
使用response.raw:

此方法強制解壓縮壓縮回應並使用shutil.copyfileobj()將資料串流傳輸到檔案對象。

r = requests.get(settings.STATICMAP_URL.format(**data), stream=True)
if r.status_code == 200:
    with open(path, 'wb') as f:
        for chunk in r:
            f.write(chunk)
登入後複製
迭代回應:

此方法可確保資料解壓縮並以 128 位元組區塊讀取資料。您可以使用 Response.iter_content() 方法自訂區塊大小。

    附加說明:
  • 以二進位模式開啟目標檔案('wb' )以防止換行符翻譯。
設定stream=True以避免將整個影像載入記憶。

以上是如何使用 Python 的請求模組修復映像下載問題?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板