开发需求:将pyppeteer自动化登录amazon后产生的缓存压缩下来返回给客户端
代码:
def adddirfile2(email):
path = pyppeteer.launcher.executablePath()
father_path = os.path.dirname(path)
cache_file = './zip_file/'
if not os.path.exists(cache_file):
os.makedirs(cache_file)
zip_file = cache_file + email + '.zip'
# 写的位置
f = zipfile.ZipFile(zip_file,'w',zipfile.ZIP_DEFLATED)
startdir = father_path+'\login2\\' + email
for dirpath, dirnames, filenames in os.walk(startdir):
fpath = dirpath.replace(startdir, '') # 这一句很重要,不replace的话,就从根目录开始复制
fpath = fpath and (fpath + os.sep) or '' # 这句话理解我也点郁闷,实现当前文件夹以及包含的所有文件的压缩
for filename in filenames:
f.write(os.path.join(dirpath,filename),fpath+filename)
f.close()
参考文档:https://www.cnblogs.com/pipihaoke/p/8033844.html