最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Django HTTPResponse響應(yīng)體中返回openpyxl生成的文件過程

 更新時間:2025年08月02日 16:31:56   作者:藍(lán)小白1024  
Django返回文件流時需通過Content-Disposition頭指定編碼后的文件名,使用openpyxl的save_virtual_workbook方法將Excel數(shù)據(jù)直接寫入HttpResponse響應(yīng)體,實(shí)現(xiàn)瀏覽器正確下載文件

Django返回文件流時使用指定文件名

http響應(yīng)頭中字符應(yīng)該按照url百分號編碼

# Python3
from urllib.parse import quote
...

# 字符串編碼問題 str(filename) ---- filename為文件名, 可能需要轉(zhuǎn)換為字符串先
response['Content-Disposition'] = 'attachment; filename={0}.xlsx'.format(quote(filename))

Django HTTPResponse響應(yīng)體中返回openpyxl生成的文件

直接將 openpyxl 生成 Excel 文檔寫入到 Django 的HttpResponse 對象響應(yīng)體中

在 openpyxl 的源碼中的有一個save_virtual_workbook 方法, 這個方法跟save在同一個文件,

導(dǎo)入路徑為

from openpyxl.writer.excel import save_virtual_workbook
@deprecated("Use a NamedTemporaryFile")
def save_virtual_workbook(workbook):
    """Return an in-memory workbook, suitable for a Django response."""
    tmp = TemporaryFile()
    archive = ZipFile(tmp, 'w', ZIP_DEFLATED, allowZip64=True)

    writer = ExcelWriter(workbook, archive)
    writer.save()

    tmp.seek(0)
    virtual_workbook = tmp.read()
    tmp.close()

    return virtual_workbook

在Django中使用并返回

from django.http import HttpResponse
from openpyxl import Workbook
from openpyxl.writer.excel import save_virtual_workbook
from urllib import quote


# 導(dǎo)出數(shù)據(jù)
def export_data(request):

    wb = openpyxl.Workbook()
	'''
	....為寫入數(shù)據(jù)的步驟 略
	'''

	# 吧文件流寫入 返回體
    response = HttpResponse(content=save_virtual_workbook(wb),
                            content_type='application/vnd.openxmlformats-officedocument.spreadsheetml.sheet')
    # 給返回的文件命名
    response['Content-Disposition'] = 'attachment; filename={0}.xlsx'.format(quote(str(title)))  # 中文名字

    return response


總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 目前最全的python的就業(yè)方向

    目前最全的python的就業(yè)方向

    Python是一門面向?qū)ο蟮木幊陶Z言,編譯速度超快,從誕生到現(xiàn)在已經(jīng)25個年頭了。其特點(diǎn)在于靈活運(yùn)用,因為其擁有大量第三方庫,所以開發(fā)人員不必重復(fù)造輪子,就像搭積木一樣,只要擅于利用這些庫就可以完成絕大部分工作
    2018-06-06
  • Python編程快速上手——強(qiáng)口令檢測算法案例分析

    Python編程快速上手——強(qiáng)口令檢測算法案例分析

    這篇文章主要介紹了Python強(qiáng)口令檢測算法,結(jié)合實(shí)例形式分析了Python針對密碼口令強(qiáng)度檢測的相關(guān)算法實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2020-02-02
  • Pyspider進(jìn)行API接口抓取和數(shù)據(jù)采集的實(shí)現(xiàn)

    Pyspider進(jìn)行API接口抓取和數(shù)據(jù)采集的實(shí)現(xiàn)

    Pyspider是一個基于Python的強(qiáng)大的網(wǎng)絡(luò)爬蟲框架,它提供了豐富的功能和靈活的擴(kuò)展性,使我們可以輕松地進(jìn)行數(shù)據(jù)的抓取和處理,本文主要介紹了Pyspider進(jìn)行API接口抓取和數(shù)據(jù)采集的實(shí)現(xiàn),感興趣的可以了解一下
    2023-09-09
  • 如何在Conda環(huán)境中降級Python版本詳細(xì)指南

    如何在Conda環(huán)境中降級Python版本詳細(xì)指南

    在Conda環(huán)境中查看Python版本是一個常見需求,特別是當(dāng)您管理多個環(huán)境時,這篇文章主要介紹了如何在Conda環(huán)境中降級Python版本的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-11-11
  • pyqt4教程之實(shí)現(xiàn)半透明的天氣預(yù)報界面示例

    pyqt4教程之實(shí)現(xiàn)半透明的天氣預(yù)報界面示例

    這篇文章主要介紹了pyqt4實(shí)現(xiàn)半透明的天氣預(yù)報界面示例,需要的朋友可以參考下
    2014-03-03
  • vscode配置與python虛擬環(huán)境切換的幾種方式總結(jié)

    vscode配置與python虛擬環(huán)境切換的幾種方式總結(jié)

    Python之所以強(qiáng)大,除了語言本身的特性外,更重要的是擁有無所不及的第三方庫,下面這篇文章主要給大家介紹了關(guān)于vscode配置與python虛擬環(huán)境切換的幾種方式,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2022-12-12
  • 精心整理總結(jié)的Python自動化測試面試題

    精心整理總結(jié)的Python自動化測試面試題

    簡單來說,自動化測試框架包含了所有的測試工作所需的測試框架,下面這篇文章主要給大家介紹了關(guān)于Python自動化測試面試題的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-02-02
  • numpy.random.shuffle打亂順序函數(shù)的實(shí)現(xiàn)

    numpy.random.shuffle打亂順序函數(shù)的實(shí)現(xiàn)

    這篇文章主要介紹了numpy.random.shuffle打亂順序函數(shù)的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • Python對象的屬性訪問過程詳解

    Python對象的屬性訪問過程詳解

    這篇文章主要介紹了Python對象的屬性訪問過程詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • pandas中quantile()函數(shù)的應(yīng)用及說明

    pandas中quantile()函數(shù)的應(yīng)用及說明

    本文介紹了pandas中quantile()函數(shù)用于計算DataFrame或Series中數(shù)值型數(shù)據(jù)的分位數(shù),通過示例展示了如何計算整個DataFrame、每列和每行的分位數(shù),并可指定百分位數(shù)和axis參數(shù)進(jìn)行計算
    2026-05-05

最新評論

罗平县| 福泉市| 同仁县| 无极县| 城市| 凉城县| 天祝| 平原县| 玉山县| 临漳县| 鄄城县| 乐亭县| 桃源县| 北京市| 塔河县| 政和县| 岳阳县| 武乡县| 厦门市| 金乡县| 平顺县| 长兴县| 都兰县| 房产| 象山县| 平潭县| 河南省| 久治县| 定安县| 土默特左旗| 福建省| 汉寿县| 元谋县| 顺义区| 开封县| 简阳市| 扎囊县| 琼中| 仙桃市| 苏州市| 万载县|