【发布时间】:2015-10-25 02:15:07
【问题描述】:
我正在尝试使用 python zipfile 模块压缩目录并且它运行良好。但现在我想排除一些文件夹。即如果我的目录树像
abc
def
ghi
jkl
mno
然后我想将所有文件归档到 myfile.zip 但不包括“ghi”
我正在尝试使用压缩文件
zf = zipfile.ZipFile("Application server.zip", "w")
for dirname, subdirs, files in os.walk("D:\\review docs"):
zf.write(dirname)
for filename in files:
zf.write(os.path.join(dirname, filename))
zf.close()
所以这是将“D:\review docs”下的所有内容归档到“Application server.zip”,但我想从 zip 中排除一些目录。 事实上,我可以使用 linux 命令来做同样的事情,但我想使用 zipfile 模块。 另外,如果我从 os.walk 选择的“目录名”列表中弹出排除文件夹名称,那会起作用吗? 进一步在压缩之前添加一个检查,比如如果“dirname”==“exlude folder”也可以工作,但我想要一个使用模块做同样事情的巧妙解决方案。我读了一些zipfile模块提供此功能但没有的地方没有找到任何相同的代码示例。
【问题讨论】: