python爬虫——文件压缩
import os
import re
import zipfile
'''
压缩文件夹内的各个文件操作,
传参需要压缩的文件夹位置path01
压缩文件的保存位置path02
文件压缩的实质时创建一个zip文件然后把选压缩的内容写入zip文件
'''
def zip(path01,path02):
path1 = path01 + '\\'
files = os.listdir(path1)
for file in files:
print(file+'开始压缩')
name = re.findall(r'(.*?).mp4',file)[0]
zipf = zipfile.ZipFile(path02+file+'.zip', 'w')
zipf.write(path1+file,file)
print(file + '压缩结束')
'''压缩文件夹'''
def zip_file(path01,path02):
path1 = path01 + '\\'
files = os.listdir(path1)
for file in files:
print(file + '开始压缩')
zipf = zipfile.ZipFile(path02 + file + '.zip', 'w')
for file1 in os.listdir(path1+file):
zipf.write(os.path.join(path1 + file, file1), file1)
print(file + '压缩结束')
'''
zipfile库不支持压缩文件时加密,
采用7z压缩软件实现压缩和加密(需要先下载7z软件)
path01:需要压缩文件的目录
path02:压缩文件的输出目录
'''
def zip_pwd(path01):
z_file = 'D:\\安装\\7-Zip\\7z.exe'
pwd = '125475'
path1 = path01 + '\\'
files = os.listdir(path1)
for file in files:
print(file + '开始压缩')
name = re.findall(r'(.*?).txt', file)[0]
cmd = z_file+' a '+ name +'.zip -p"125475" -y '+ path1+file
os.popen(cmd)
print(file + '压缩完成')
'''解压文件'''
def change_zip(path01,path02):
path1 = path01 + '\\'
files = os.listdir(path1)
for file in files:
zfile = zipfile.ZipFile(path1+file)
zfile.extractall(path02)