ใช้โมดูล zipfile เพื่อสร้างไฟล์ zip ของไดเร็กทอรี เดินแผนผังไดเร็กทอรีโดยใช้ os.walk และเพิ่มไฟล์ทั้งหมดในนั้นซ้ำๆ
ตัวอย่าง
import os
import zipfile
def zipdir(path, ziph):
# ziph is zipfile handle
for root, dirs, files in os.walk(path):
for file in files:
ziph.write(os.path.join(root, file))
zipf = zipfile.ZipFile('Zipped_file.zip', 'w', zipfile.ZIP_DEFLATED)
zipdir('./my_folder', zipf)
zipf.close() รหัสด้านบนจะซิปเนื้อหาของ my_folder ในไฟล์ 'Zipped_file.zip' และเก็บไว้ในไดเร็กทอรีปัจจุบัน