Python解压一个目录下的所有压缩包

1.

安装对应的环境:
pip install rarfile

2. 代码


import zipfile

import tarfile

import os

import shutil

from globimport glob

import sys

def un_zip(path,file_name):

"""unzip zip file"""

    zip_file = zipfile.ZipFile(path+file_name)

    unzipDir = os.path.splitext(file_name)[0]

    print("unzipDir:", unzipDir)

'''

if os.path.isdir(unzipDir):

pass

else:

os.mkdir(unzipDir)

'''

    for namesin zip_file.namelist():

      print("names:",names)

      zip_file.extract(names,path)

   zip_file.close()

print(file_name +"解压完成!")

path='F:\matlab-project\Tracker\data\\video\\' #'F:/matlab-project/test/'

files = os.listdir(path)

for file_namein files:

print("file_name:",os.path.splitext(file_name)[1])

if os.path.splitext(file_name)[1] =='.zip':

print("file_name:",file_name)

un_zip(path,file_name)

2.2

import zipfile
import tarfile
import rarfile
import os
import shutil
#from globimport glob
import sys

"""unzip zip file"""
def un_zip(path,file_name):
    if (file_name.find(".zip")) > -1:
        zip_file = zipfile.ZipFile(path+file_name)
        a_name = zip_file.namelist()
    if (file_name.find(".tar")) > -1:
        zip_file = tarfile.open(path+file_name)
        a_name = zip_file.getnames()
    if (file_name.find(".rar")) > -1:
        zip_file = rarfile.RarFile(path+file_name)
        a_name = zip_file.namelist()

    new_path= 'H:\\dataset\\ISLVRC2012-train-picture\\'
    unzipDir = os.path.splitext(file_name)[0]
    print("unzipDir:", unzipDir)
    print("new_path:", new_path+unzipDir)
    if os.path.isdir(new_path+unzipDir):
        pass
    else:
        os.makedirs(new_path+unzipDir)

    for names in a_name:
      print("names:",names)
      zip_file.extract(names,new_path+unzipDir)

    zip_file.close()
    print(file_name +"解压完成!")

path='H:\\dataset\\ISLVRC2012--train\\'   #'F:/matlab-project/test/'

files = os.listdir(path)
for file_name in files:
  print("file_name:",os.path.splitext(file_name)[1])
  print("file_name:",file_name)
  un_zip(path,file_name)

参考资料

[1] 用Python批量解压压缩包中的某一类型的文件

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容