2022年 11月 4日

Python —— 压缩文件夹

                                                  Python —— 压缩文件夹

目标:压缩指定文件夹为zip文件

适用场景:批处理文件,定时打包并发送至指定用户邮箱

python脚本如下:

  1. #!/usr/bin/env python
  2. # -*- coding:utf-8 -*-
  3. """
  4. @Author :xxxxx
  5. @Contact :1223242863@qq.com
  6. @File :zip.py
  7. @Time :2021/8/17 11:27 PM
  8. @Software :Pycharm
  9. @Copyright (c) 2021,All Rights Reserved.
  10. """
  11. import os
  12. import zipfile
  13. from loguru import logger
  14. def getZipDir(dirpath, outFullName):
  15. """
  16. 压缩指定文件夹
  17. :param dirpath: 目标文件夹路径
  18. :param outFullName: 压缩文件保存路径+xxxx.zip
  19. :return: 无
  20. """
  21. zip = zipfile.ZipFile(outFullName, "w", zipfile.ZIP_DEFLATED)
  22. for path, dirnames, filenames in os.walk(dirpath):
  23. # 去掉目标跟路径,只对目标文件夹下边的文件及文件夹进行压缩
  24. fpath = path.replace(dirpath, '')
  25. for filename in filenames:
  26. zip.write(os.path.join(path, filename), os.path.join(fpath, filename))
  27. zip.close()
  28. logger.info("文件夹\"{0}\"已压缩为\"{1}\".".format(dirpath, outFullName))
  29. if __name__ == "__main__":
  30. getZipDir(dirpath="/Users/xxxxx/Desktop/台大林轩田机器学习基石课程学习笔记",
  31. outFullName="/Users/xxxxx/Desktop/test.zip")