如何在mac上正确压缩文件以通过python从s3解压缩?

生锈的沙克尔福德

我要压缩的文件夹中有一系列文本文件。我压缩文件夹并生成一个 zip 文件。

当我以编程方式调用 zipfile 时,出现错误:BadZipFile: File is not a zip file.

我一直在使用这段代码测试压缩目录:

import zipfile
print (zipfile.is_zipfile("~/path/to/zipfile.zip") )
[output]:false

我什至尝试使用此代码以编程方式创建一个新的压缩目录并尝试上面的 zipfile 检查器代码,但也从中得到 False:

import os
import zipfile
def zipdir(path, ziph):
    # ziph is zipfile handle
    for root, dirs, files in os.walk(path):
        for file in files:
            ziph.write(os.path.join(root, file))
zipf = zipfile.ZipFile('Zipped_file.zip', 'w', zipfile.ZIP_DEFLATED)
zipdir('~/Desktop/cleaned_files_2', zipf)
zipf.close()

我没有生成有效的压缩目录,我做错了什么?

pmqs

总结评论。您提供的 python 代码看起来不错,并且您说将 zip 文件往返传输到 s3 表明它没有被损坏。

这就留下了为什么会出现错误的问题BadZipFile: File is not a zip file

如果您需要进一步的帮助,您能否尝试提供一个可重现的示例来说明问题。我怀疑它与您正在运行的 haystack.utils API 相关(在您的评论中引用),但这不是我所知道的模块。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章