首页 > 解决方案 > 烧瓶上传读取 xlsx 文件而不保存它

问题描述

我想在我的网络应用程序中上传一个 excel 文件,阅读它的内容并显示一些单元格。所以基本上我不需要保存文件,因为这是浪费时间。

相关代码:

if form.validate_on_submit():

        f = form.xml_file.data.stream

        xml = f.read()

        workbook = xlrd.open_workbook(xml)

        sheet = workbook.sheet_by_index(0)

我无法解决这个问题,因为无论我尝试什么,我都会不断收到文件类型错误。我正在使用 Flask Uploads、WTF.file 和 xlrd 来读取文件。

如果我之前用 f.save 保存文件,读取文件就可以了

标签: pythonexcelflaskxlrd

解决方案


为了回答我自己的问题,我用

if form.validate_on_submit():

        # Put the file object(stream) into a var
        xls_object = form.xml_file.data.stream

        # Open it as a workbook
        workbook = xlrd.open_workbook(file_contents=xls_object.read())

推荐阅读