본문 바로가기
IT-개발/PYTHON

python - unicode error

by 로데안 2023. 4. 14.

리핑한 mp3파일이 많은데
가사는 따로 넣지 않았다.
몇 천 개의 파일(대체 음반을 얼마나 사모은 걸까..)을 일일이 가사 넣는 건 귀찮은 일이다.
 
그래서!
계속 해오던 자바로 개발하면 무난히 개발했겠지만
공부도 하고 bs4도 써볼 겸
파이썬으로 제작해보고 있다.
https://pypi.org/project/beautifulsoup4/

파이썬은 3.10.11
툴은 vscode
파이썬 설치 관련 글은 아래 링크 참조

 

beautifulsoup4

Screen-scraping library

pypi.org

 

 

2023.04.09 - [IT-개발/PYTHON] - python - Windows embeddable package python 3.10+ environment setting (for Windows)

 

python - Windows embeddable package python 3.10+ environment setting (for Windows)

https://www.python.org/downloads/ 에 버전별 download 페이지에 들어가면Windows Installer 버젓이 존재하지만binary 방식을 쓰는걸 좋아하는 사람으로서Windows embeddable package 을 선택해서 설정해봤다. 정말 python

lodean9.tistory.com

 

 

python의 라이브러리는 

https://pypi.org

 

PyPI · The Python Package Index

The Python Package Index (PyPI) is a repository of software for the Python programming language.

pypi.org

에서 검색해 볼 수 있다. 자바 개발자라면 익히 알고 있을 mvnrepository와 비슷하다고 생각을..


mp3-tagger를 이용하는 중이었던 것 같은데
파일을 여는데 계속해서 유니코드 에러가 났었다.
처음엔 아니 파일명이 한글이라 못 여는 거야?라고 생각했었고
라이브러리가 오래돼서 (2년 전 이후로 업데이트가 없음) 손을 놨나 싶던 차에
다른 라이브러리를 찾았다.

이번엔 music-tag 라는 걸 집어 왔다.
 
이상하게도 아래와 같은 메시지가 연속해서 발생했다.

SyntaxError: (unicode error) 'utf-8' codec can't decode byte 0x8a in position 5: invalid start byte

메시지 내용을 보아

시작바이트를 읽는데 유니코드 바이트 구조에 맞지 않는다는 내용이니

인코딩 관련 설정이 필요해 보였다. 

 

파이썬, 너는 대체..
이유는 php를 수정하면서 vscode 인코딩 기본값을 EUC-KR로 설정해 놨었는데
이걸 utf-8로 변경하니 잘 넘어갔다..
 
하하하..

 

자바라면 익숙한(?) 인코딩 문제가 파이썬에서도...!

 

아무래도 python 코드파일의 encoding을 따라게는게 아닌가 싶다.

 

 

epilogue
추후에 이런 사항은
회사에서 유지보수용 게시판 데이터를 크롤링하여 옮기는 프로그램을 만드는 데 사용되었다는 후문을 남깁니다. (자바로)

 

 

 

반응형