본문 바로가기

Python

[Python] Python의 UnicodeDecodeError

File을 읽어오는 과정에서 디코딩 에러가 발생할 때가 있다.

'cp949' codec can't decode byte 0xdd in position 10597888: illegal multibyte sequence

 

cp949로 인코딩된 파일을 읽어오다보니 생긴 에러이다.

아마 cp949 코덱이 byte로 디코딩할 수 없다는 에러인 듯.

 

encoding 파라미터로 utf-8 을 넣어주면 된다고 해서 해줬지만 역시나 또 에러가 발생했다.

'utf-8' codec can't decode byte 0xdb in position 10596864: invalid continuation byte

 

보통은 utf-8로 하면 수월하게 파일을 읽어왔는데 이런 경우는 처음이라 당황했음.

좀 더 찾아본 결과.. 이럴 땐?! "ISO-8859-1” 으로 디코딩을 하면 된다!!

file = open(filename, 'r', encoding="ISO-8859-1");

ISO-8859-1 코덱에 대해 찾아보니까 ISO/IEC 8859의 일부 문자로, Latin-1이라고도 쓰인다.

 

깃허브 블로그의 글들을 긁어가져오는 중. 구글 노출도가 높다고 해서..

19년 7월에 쓴 걸 봐서는 프로젝트 중 한자 및 한글을 처리하는 태스크에서 생긴 오류같음.

'Python' 카테고리의 다른 글

Python Web Framework : Flask  (0) 2021.09.02