首页 > 解决方案 > 无法使用 patool 包提取 gz 文件

问题描述

我正在尝试使用该patool包执行一个简单的操作:解gz压缩包含一个文件的存档。存档中的这个文件是与存档具有完全相同名称的 xml 文件,只是没有.gz结尾。

我用于此的代码是:

import patoolib
filePath = 'D:\\inpath\\file.xml.gz'
outPath= 'D:\\outpath'
patoolib.extract_archive(filePath,outdir=outPath, interactive=False, verbosity=-1)

但是会发生什么是文件被提取但以损坏的方式。即文件出现在outPath文件夹中,但有0kb,无法打开。我得到的错误是:

PatoolError: 命令 `['c:\Rtools\bin\gzip.EXE', '-c', '-d', '--', 'D:\inpath\file.xml.gz', '>', 'D:\outPath\file.xml']' 返回非零退出状态 1

现在,我确信存档没有损坏,因为当我使用 Windows 资源管理器手动执行提取时,它确实可以正常工作。

这段代码确实适用于其他一些文件,但我不明白为什么这个文件会发生这种情况。另外,我想知道是否有一种更简单的方法可以更顺利地工作。

标签: pythonpython-3.xcompressiongzip

解决方案


推荐阅读