PL/Python

[Python3] Bugs Chart Crawling, Encoding Error 해결, UTF-8 Encoding 방식의 문제점, BOM

Garonguri 2021. 10. 13. 15:57
728x90

음원 사이트 Bugs에서 장르 별 인기순 음악 list 정보를 받아 csv파일로 저장하기 위한 코드를 작성하던 중, 

csv파일 인코딩 문제를 겪게 되었다.

 

Python3의 경우에는 ANSI로 작성된 파일만 읽을 수 있기 때문에, UTF-8이나 CP949로 작성된 파일을 읽을 때는 인코딩 형식을 변환해주어야 한다.

 

  • savename : file 경로
  • wt : w -> Writing mode , t -> Text mode
  • -1 : buffering
  • utf-8
    • utf-8 만으로 encoding을 했을 때는, 오류가 생겼다.  utf-8이라는 string, 즉 문자열로 처리되었기 때문이다. 
  • uft-8-sig
    • sig는 signature의 약자이다.
    • 문자열이 아닌 인코딩 정보로 인식하고, 즉 BOM을 파일 정보로 취급하기 때문에, 오류가 나지 않는다.

 

728x90