본문 바로가기

app/python

'utf-8' codec can't decode byte 0xff in position 0: invalid start byte

해당 사항은 이미지에 대한 건 입니다. 일반적인 텍스트일 경우 다르게 동작 할 수 있습니다.

 

 

 

크롤링 중 리턴 값이 바이트형식으로 되어 있다.

'utf-8' codec can't decode byte 0xff in position 0: invalid start byte

 

다른 인코드 형태인가 해서 euc-kr / cp949 / utf-16도 해봤지만 모두 에러가 발생했다.

 

사실 에러가 발생하는 요청은 이미지로

정상적인 이미지인 부분은 변환이 불가능 하여 에러가 발생하였고,

이미지가 아닐경우에 <html>을 리턴하는 형태의 api 였다 (이 무슨…괴랄한..)

 

req.content.decode('utf-8', 'ignore')

를 한다면 이미지의 경우 깨진 string으로 변환되고

html일 경우엔 정상적으로 string 으로 변환된다.

 

 

리턴값이 이미지일 경우 깨짐

 

텍스트는 정상 출력 됨