python 压缩文件夹 脚本

2022-05-13 17:59:56 浏览数 (3)

! python3

backupToZip.py

Copies an entire folder and its contents into

a zip file whose filename increments.

import zipfile, os

def backupToZip(folder): # Backup the entire contents of "folder" into a zip file.

代码语言:javascript复制
folder = os.path.abspath(folder) # make sure folder is absolute

# Figure out the filename this code should used based on
# what files already exist.
number = 1
while True:
    zipFilename = os.path.basename(folder)   '_'   str(number)   '.zip'
    if not os.path.exists(zipFilename):
        break
    number = number   1

# Create the zip file.
print('Creating %s...' % (zipFilename))
backupZip = zipfile.ZipFile(zipFilename, 'w')

# Walk the entire folder tree and compress the files in each folder.
for foldername, subfolders, filenames in os.walk(folder):
    print('Adding files in %s...' % (foldername))
    # Add the current folder to the ZIP file.
    backupZip.write(foldername)

    # Add all the files in this folder to the ZIP file.
    for filename in filenames:
        if filename.startswith(os.path.basename(folder)   '_') and filename.endswith('.zip'):
            continue # don't backup the backup ZIP files
        backupZip.write(os.path.join(foldername, filename))
backupZip.close()
print('Done.')

backupToZip('d:WelcomeToWangsu')

0 人点赞