python3 压缩文件

python3 压缩文件

根据文件修改日期同一天的文件压缩成一个压缩包

// compresszip.py
#!/usr/local/bin/python3
import os, time, sys, zipfile

root_path=sys.argv[1]
zipdict = {}
def file_name(file_dir):
  os.chdir(file_dir)
  for root, dirs, files in os.walk(file_dir):
    #print('root_dir:', root)  # 当前目录路径
    #print('sub_dirs:', dirs)  # 当前路径下所有子目录
    #print('files:', files)  # 当前路径下所有非目录子文件
    for file in files:
      if ".zip" in file:
        continue
      modify_time = os.path.getmtime(file)
      date = time.strftime("%Y%m%d", time.localtime(modify_time)) 
      if date in zipdict:
        zipdict.get(date).append(file)
      else:
        zipdict[date]=[file]
      #print(date)

def zip_files(zip_src):
    print("begin zip ...")
    isExistspath = root_path +"/"+ zip_src[0:4]+"/"+zip_src[4:6]
    isExists=os.path.exists(isExistspath)
 
    # 判断结果
    if not isExists:
        # 如果不存在则创建目录
        # 创建目录操作函数
        os.makedirs(isExistspath) 
        print(isExistspath+' 创建成功')
    f = zipfile.ZipFile(isExistspath +"/"+zip_src + ".zip", 'w', zipfile.ZIP_DEFLATED)
    for file in zipdict.get(zip_src):
        f.write(file)
        os.remove(root_path + "/"+ file)
    f.close()




if __name__ == "__main__":
  file_name(root_path)
  for key in zipdict.keys():
    zip_files(key)

执行命令 : compresszip.py 要压缩文件的目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值