본문 바로가기
Python

[Python] 'cp949' codec can't decode byte 0xec : illegal multibyte sequence (UnicodeDecodeError)

by daewooki 2021. 8. 3.
반응형

엑셀 파일이나 텍스트 파일 등 문서를 읽어서 작업을 해야하는 경우가 많다.

 

json 파일을 읽어서 로드를 하려고 하면

다음과 같이 UnicodeDecodeError: 'cp949' codec can't decode byte 0xec in position N: illegal multibyte sequence  에러가 발생하는 경우가 있다. 

 

아래와 같이 json파일을 읽게 되면 6번째 라인에서 해당 에러가 발생한다.

1
2
3
4
5
6
7
8
import json
 
file_path = './data/ko.json'
 
with open(file_path) as json_file:
    text_data = json.load(json_file)
 
 
cs

 

이럴 때는 encoding 파라미터에 utf8을 지정해주면 에러가 발생하지 않는다.

 

1
2
3
4
5
6
7
8
import json
 
file_path = './data/ko.json'
 
with open(file_path, encoding='UTF8'as json_file:
    text_data = json.load(json_file)
 
 
cs

 

json 형식의 파일 뿐만 아니라 txt, csv 파일 등 각 파일에서 해당 에러가 발생한다면 encoding 파라미터를 확인하고 지정해주면 된다.

 

 

반응형

댓글