Python —— 压缩文件夹
目标:压缩指定文件夹为zip文件
适用场景:批处理文件,定时打包并发送至指定用户邮箱
python脚本如下:
- #!/usr/bin/env python
- # -*- coding:utf-8 -*-
-
- """
- @Author :xxxxx
- @Contact :1223242863@qq.com
- @File :zip.py
- @Time :2021/8/17 11:27 PM
- @Software :Pycharm
- @Copyright (c) 2021,All Rights Reserved.
- """
-
- import os
- import zipfile
- from loguru import logger
-
-
- def getZipDir(dirpath, outFullName):
- """
- 压缩指定文件夹
- :param dirpath: 目标文件夹路径
- :param outFullName: 压缩文件保存路径+xxxx.zip
- :return: 无
- """
- zip = zipfile.ZipFile(outFullName, "w", zipfile.ZIP_DEFLATED)
- for path, dirnames, filenames in os.walk(dirpath):
- # 去掉目标跟路径,只对目标文件夹下边的文件及文件夹进行压缩
- fpath = path.replace(dirpath, '')
-
- for filename in filenames:
- zip.write(os.path.join(path, filename), os.path.join(fpath, filename))
- zip.close()
- logger.info("文件夹\"{0}\"已压缩为\"{1}\".".format(dirpath, outFullName))
-
-
- if __name__ == "__main__":
- getZipDir(dirpath="/Users/xxxxx/Desktop/台大林轩田机器学习基石课程学习笔记",
- outFullName="/Users/xxxxx/Desktop/test.zip")