Python 使用zipfile提取大型文件
我正在尝试使用Python 使用zipfile提取大型文件,python,zipfile,Python,Zipfile,我正在尝试使用zipFilelibrary提取一个1.23GB的zip文件。但它给出了以下错误: compression type 9 (deflate64) 这是我的密码: zip_ref = zipfile.ZipFile(filepath, 'r') zip_ref.extractall(newPath) 它在尝试提取内容时出错 有没有办法用Python解压大型zip文件?之所以会出现这种情况,是因为压缩方法没有在zipfile模块中实现 关于这个问题的一些讨论如下: 修复方法是提出
zipFile
library提取一个1.23GB的zip文件。但它给出了以下错误:
compression type 9 (deflate64)
这是我的密码:
zip_ref = zipfile.ZipFile(filepath, 'r')
zip_ref.extractall(newPath)
它在尝试提取内容时出错
有没有办法用Python解压大型zip文件?之所以会出现这种情况,是因为压缩方法没有在
zipfile
模块中实现
关于这个问题的一些讨论如下:
修复方法是提出一个NotImplementedError
,而不是增加对压缩方法的支持
建议的解决办法:
- 如果可能,请使用标准的deflate方法重新压缩文件
- 使用
模块调用系统子流程
命令,假设它安装在您的操作系统上(如果它支持这种压缩方法,我真的不确定。我知道7-zip支持这种方法)解压
解压
命令和子流程
模块,该模块可能安装在我的系统中,也可能不安装,而不是提取所有文件
?是的,至少以前是这样,我还没有听说添加了压缩方法。请注意,zip存档格式支持可插入的压缩方法,仅仅因为您有一个支持存档格式的库并不意味着它支持所有算法。但为什么它适用于小文件而不适用于大文件?我猜:您的存档程序会根据源输入动态更改方法。使用zipinfo-v zipfile.zip
打印每个zip文件的信息,查看它使用的方法。