본문 바로가기
코인 자동매매

csv 파일 엑셀로 열 때 한글 깨짐 해결 파이썬 코드

by Vacant June 2024. 12. 29.
반응형

csv 파일 인코딩 문제로 한글이 포함된 파일을 엑셀로 열 때 깨지는 경우가 있다.

후가공을 위해 엑셀을 사용하는데, 매번 인코딩을 바꾸기 귀찮아서 파이썬 파일을 만들었다.

import pandas as pd
import tkinter as tk
from tkinter import filedialog
import os
from openpyxl import load_workbook
from openpyxl.worksheet.table import Table

def convert_encoding_and_open_excel():
    # Step 1: 파일 선택 창 열기
    root = tk.Tk()
    root.withdraw()  # Tkinter 기본 창 숨기기
    file_path = filedialog.askopenfilename(
        title="CSV 파일 선택",
        filetypes=[("CSV Files", "*.csv"), ("All Files", "*.*")]
    )

    if not file_path:
        print("파일이 선택되지 않았습니다.")
        return

    try:
        # Step 2: CSV 파일 읽기
        df = pd.read_csv(file_path, engine='python')

        # Step 3: UTF-8로 저장
        output_path = os.path.splitext(file_path)[0] + "_converted.xlsx"
        df.to_excel(output_path, index=False, engine='openpyxl')

        wb = load_workbook(output_path)

        wb.save(output_path)

        print(f"변환된 파일이 저장되었습니다: {output_path}")

        # Step 3: 변환된 파일을 Excel로 열기
        os.startfile(output_path)

    except Exception as e:
        print(f"오류 발생: {e}")

if __name__ == "__main__":
    convert_encoding_and_open_excel()
728x90

댓글