一旦我在特定文件夹中拥有了我需要的所有文件,我希望我的python脚本压缩文件夹内容.
这可能吗?
我怎么能这样做呢?
在python Web应用程序中,我将一些东西打包成zip文件.我想在内存中完全执行此操作,而不需要触摸磁盘.只要我正在创建一个平面目录结构,使用ZipFile.writestr就可以了,但是如何在zip中创建目录呢?
我正在使用python2.4.
假设我有一个目录:/home/user/files/.这个目录有一堆文件:
/home/user/files/
-- test.py
-- config.py
Run Code Online (Sandbox Code Playgroud)
我想ZipFile在python中使用zip目录.我是否需要遍历目录并递归添加这些文件,或者是否可以传递目录名称,ZipFile类会自动添加其下的所有内容?
最后,我想:
/home/user/files.zip (and inside my zip, I dont need to have a /files folder inside the zip:)
-- test.py
-- config.py
Run Code Online (Sandbox Code Playgroud) 我一直在尝试使用zipfile和shutil.make_archive模块递归创建目录的zip文件.两个模块都运行良好 - 除了空目录不会添加到存档.还会以静默方式跳过包含其他空目录的空目录.
我可以使用7Zip创建相同路径的存档,并保留空目录.因此我知道在文件格式本身中这是可能的.我只是不知道如何在Python中做到这一点.有任何想法吗?谢谢!