Posted at

python3でUnicodeDecodeErrorが出た時の応対

More than 1 year has passed since last update.


はじめに

開発サーバーでpythonバッチを実行したら以下のUnicodeDecodeErrorが出たのでその時の対処法をまとめました


参考にしまくったもの


対応方法


  1. まずPython3でUnicodeDecodeErrorに遭遇したときのTODOリストを見て深呼吸して落ち着きブツブツつぶやきます

  2. 次にサーバー環境の環境言語を見ます。


import sys

print(sys.stdout.encoding)

ANSIなのです。これまでのローカルでは utf8がデフォルトでした

3.エラー元をみる



opneでtextを開いているが、文字コードを指定してないので、デフォルト(ANSI)に変わっていたようだ。


  1. codecsを導入してutf-8デコードを行う

pythonの標準エンコードクラスであるcodecsをimportしてきてopenする際にutf-8でデコードします

これで解決です!


最後に

参考にさせていただきましたサイトさんの方々、ありがとうございました。おかげさまでうまくいきました。