我在測試時研究不出為什麼我壓縮出來的EPUB檔無法開啟
於是參考了其他人的程式碼發現
我只要將
zf = zipfile.ZipFile('{}.epub'.format(path), 'a', zipfile.ZIP_DEFLATED)
改成
zf = zipfile.ZipFile('{}.epub'.format(path), 'a', zipfile.zlib.DEFLATED)
EPUB就能成功打開了
這是什麼原理啊
可以解說一下嗎
zip file format: https://users.cs.jmu.edu/buchhofp/forensics/formats/pkzip-printable.html
epub使用zip格式當作archive的一些限制:https://www.w3.org/publishing/epub3/epub-ocf.html#sec-container-zip (很多使用zip當作archive的規格都有類似限制)
通常可能的問題(猜測):
檢查做好的epub檔,看看裡面各個local file headers各個欄位是否符合預期。