首页 > 解决方案 > 使用 python ZIPFile 提取 gz 文件

问题描述

我正在使用 Python 2.7

我有以下代码

文件 = ZipFile("D:\Project\text.evt.gz")

它给出以下错误 “BadZipfile:文件不是 zip 文件”

在尝试手动提取文件时,我收到以下错误 “数据意外结束”

不管Python中的这个错误如何,都可以提取evt文件吗?

基本上我想将压缩的 evt 文件提取到特定的目标文件夹

标签: pythonpython-2.7zipfile

解决方案


文件扩展名“gz”表明这是一个 gzip 文件,与 zip 文件不同。试试 gzip 模块。

#!/usr/bin/env python3

import gzip
import sys


with gzip.open('/Some/file/somewhere.gz', 'rb') as f:
    file_content = f.read()

for i in file_content:
    print(chr(i),file=sys.stdout, end='')

虽然如果您需要它是通用的,并且您不必操纵内容,那么研究对7zip的系统调用可能更有意义。


推荐阅读