開發需求:將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