python 处理zip文件 解压zip 压缩zip文件和压缩目录

 自己需要 就写了两个函数 。

import zipfile
#解压zip文件
def unzip(zip_path=None,file_path=None):
    if zip_path is None or file_path is None:
        return False
    if os.path.exists(zip_path):
        zip_file = zipfile.ZipFile(zip_path)
        zip_file.extractall(file_path)
        zip_file.close()
#压缩文件
def zip(file_path=None,zip_path=None):
    zip_path_type = 0
    if file_path is None or zip_path is None:
        return False
    if os.path.isdir(file_path):
        zip_path_type = 1
    elif os.path.isfile(file_path):
        zip_path_type = 2
    else:
        return False
    zip_file = zipfile.ZipFile(zip_path,‘w’,zipfile.ZIP_DEFLATED)
    if zip_path_type == 2:
        zip_file.write(file_path)
    if zip_path_type == 1:
        for fpathe,dirs,fs in os.walk(file_path):
            for f in fs:
                tmp_file_path = os.path.join(fpathe,f)
                zip_file.write(tmp_file_path)
    zip_file.close()
#使用方法
unzip(‘需要解压的zip文件路径’,’解压到的目录’) #解压模板
zip(‘需要zip压缩的文件或目录’,’压缩到zip的文件路径’) #重新打包
 
#demo
unzip(‘/home/wwwroot/test.zip’,’/home/wwwroot/test’)
zip(‘/home/wwwroot/test’,’/home/wwwroot/test.zip’)
 

 

发表评论

您的电子邮箱地址不会被公开。