エラー内容
- エラー文
UnicodeDecodeError: 'cp932' codec can't decode byte 0x85 in position 5052759: illegal multibyte sequence
Nuitka-Reports: Compilation crash report written to file 'nuitka-crash-report.xml'. Please include it in your bug report. - 日本語訳
ユニコードでコードエラー: 'cp932' コーデックが位置 5052759 のバイト 0x85 をデコードできません: 不正なマルチバイト列
Nuitka-Reports: コンパイルのクラッシュレポートが 'nuitka-crash-report.xml' ファイルに書き込まれました。バグレポートに含めてください。
解決方法
コマンドプロンプトに
chcp 932
と入力する。
経緯
PDFやExcelファイルを扱うデスクトップアプリをFletで作成しNuitkaでコンパイルしようとしたところ、上記のエラーが発生した。Pythonファイルとして実行した際はエラーも出ず文字化けもしていなかった。
原因
Excelの文字コードとしてデフォルトだとUTF-8が選択されてしまうため?Windows環境ではShift-JISが主流とのこと。
なぜコンパイル時になって問題が発生したのかは不明。
余談
pandasのto_excelメソッドを使用していたが、その際に引数encoding="shift-jis"を設定していなかった。こちらの方法でもよかった……のかなあ。
読んでいただきありがとうございます!この記事を読んだ方のエラー解決がうまく行くことを願っています。
参考
【Python】UnicodeDecodeError: 'cp932' codec can't decode byte 0x81...エラーの原因と解決方法