我有一个大文件夹,里面有900多个子文件夹,每个子文件夹里面都有另一个文件夹,这个文件夹又有一个压缩文件。就像-
-我的文件夹
-----我的子文件夹
---------MySubSubfolder
-------------MyFile.zip
如何使用Python将所有压缩文件解压到各自的文件夹中,或者解压到Windows其他地方的单独文件夹中?
任何帮助都会很棒!!
您可以尝试以下操作:
import zipfile,os;
def unzip(source_filename, dest_dir):
with zipfile.ZipFile(source_filename) as zf:
for member in zf.infolist():
extract_allowed = True;
path = dest_dir;
words = member.filename.split('/');
for word in words:
if (word == '..'):
extract_allowed = False;
break;
if (extract_allowed == True):
zf.extract(member, dest_dir);
def unzipFiles(dest_dir):
for file in os.listdir(dest_dir):
if (os.path.isdir(dest_dir + '/' + file)):
return unzipFiles(dest_dir + '/' + file);
if file.endswith(".zip"):
print 'Found file: "' + file + '" in "' + dest_dir + '" - extracting';
unzip(dest_dir + '/' + file, dest_dir + '/');
unzipFiles('./MyFolder');