創建zip文件的最佳方法是將每個必需的文件(您的HTML)文件存儲在(臨時)目錄中。然後你可以壓縮目錄。
說,你保存在您的work_dir
ZIP文件,你一個用來編寫HTML文件的函數write_html
,你可以壓縮你的HTML文件是這樣的:
import os
import shutil
import tempfile
import zipfile
work_dir = "..."
zip_path = os.path.join(work_dir, "delivery.zip")
zip_dir = tempfile.mkdtemp()
try:
with zipfile.zipfile(zip_path, "w", compression=zipfile.ZIP_DEFLATED) as zfd:
for html_name in html_names:
html_path = os.path.join(zip_dir, html_name)
write_html(html_path, html_name)
zfd.write(html_path, html_name)
finally:
shutil.rmtree(zip_dir)
正是我需要的;謝謝! –