PythonでアーカイブしたZIPファイル名をShift-JISにする
はじめに
Python の zipfile ライブラリはファイル名を UTF-8 でエンコードするため Windows のレガシーな解凍ソフトで解凍するとファイル名が文字化けします。ファイル名を Shift-JIS でエンコードする方法を紹介します。
世の中には UTF-8 で文字化けする解凍ソフトが残っている
2007 年 9 月に ZIP の仕様が追加され、エンコードを UTF-8 に統一するための仕組みが完成してから、ZIP ファイル名は UTF-8 にエンコードすることがスタンダードになりつつあります。
APPNOTE - PKZIP & SecureZIP
https://support.pkware.com/home/pkzip/developer-tools/appnote
しかし、日本国内では、UTF-8 に未対応の解凍ソフト(+Lhaca Lhaplus など)を使っているユーザーが多くいます。(Windows のエクスプローラーだけで UTF-8 の ZIP 解凍できるのに)