LoginSignup
2
0

More than 5 years have passed since last update.

PythonでUnicodeDecodeErrorが出る

Posted at

エラー内容

UnicodeDecodeError

'utf-8' codec can't decode byte 0x83 ...

decode1.PNG

環境

Python:3.6.3
Django:1.11.12
開発環境:Windows7 32bit
実行環境:Windows7 32bit & IIS7.5

事象

開発環境にて機能改修を行った。その後、実行環境へソースコードをコピーし、実行環境のwebサービスを呼び出したところ、上記エラーが表示された。

原因と対策

エラー内容は、ソースコードをutf-8に変換できないことを示している。つまり、ソースコードファイルがutf-8で保存されていない。問題のあるファイルを正しくutf-8で保存してあげればよい。

まずエラー画面下部を見て、問題が発生しているファイル名を見つける。
以下の例だと、app\loginparcial.htmlというファイルがおかしい模様。

decode2.PNG

問題のファイルをテキストエディタで開く。
例では、フリーソフトのエディタ「Mery」を使用している。
decode3.PNG
ウィンドウフッタを見れば、シフトJISで保存されていることが分かる。

エディタの「名前をつけて保存」を行う。この時、エンコードを「UTF-8」に変える。ファイル名は同じままで上書き保存すればよい。
decode4.png

ウィンドウフッタのエンコードがUTF-8に変わった。
decode5.PNG

webサービスを呼び出すと、ページが正しく表示された。
decode6.PNG

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0