python流式处理zip和xls文件

python流式处理zip和xls文件

一般情况下我有一个二进制的数据,可以另存为1.zip,zip文件解压之后有1个1.xls文件,这样我可以解压zip文件然后使用相关的包读取xls文件即可

但是我现在不想这样做,我想在不创建文件的情况下,直接在内存中解压二进制数据,并且解码得到的xls的二进制数据接着处理,我应该如何做。。搜索半天网上没有找到这样的解决方案,我也不知道用什么包可以做到


回答:

from zipfile import ZipFile

import io

import xlrd

with ZipFile(io.BytesIO(open('test.xlsx.zip', 'rb').read())) as myzip:

with myzip.open('test.xlsx', 'r') as myfile:

print(xlrd.open_workbook(file_contents=myfile.read()).sheets()[0].name)


回答:

首先你所谓的“不创建文件”的意思是不创建解压后的文件,还是源zip文件也不创建?

zip是文件归档压缩格式,其中必然有文件存储结构。如果你只是加解压数据流,你应该用gzip

以上是 python流式处理zip和xls文件 的全部内容, 来源链接: utcz.com/a/160068.html

回到顶部