콘텐츠로 이동

CSV 파일로 저장하기

필요한 모듈 설치하기

!pip install gradio

CSV로 저장하기 위한 템플릿

import gradio as gr
import sqlite3
import pandas as pd


# 버튼 클릭 시 실행될 함수 정의
def button_action():
    gr.Info("CSV로 저장하였습니다.")


# SQLite 데이터베이스에 연결 (파일이 없다면 자동으로 생성됨)
conn = sqlite3.connect('customer.db')  # 'customer.db'는 데이터베이스 파일 이름

# 데이터 조회
query = "SELECT * FROM as_list"

df = pd.read_sql_query(query, conn)

with gr.Blocks() as demo:

    with gr.Row():
        button1 = gr.Button("CSV로 저장하기")

    gr.DataFrame(df)

    # 각 버튼에 클릭 이벤트와 출력 연결
    button1.click(fn=button_action)

demo.launch()

CSV로 저장하는 기능 완성하기

import gradio as gr
import sqlite3
import pandas as pd


# 버튼 클릭 시 실행될 함수 정의
def button_action():
    export_to_csv()    


# DB에 저장하는 함수 정의
def export_to_csv():

    # SQLite 데이터베이스에 연결 (파일이 없다면 자동으로 생성됨)
    conn = sqlite3.connect('customer.db')  # 'customer.db'는 데이터베이스 파일 이름

    # 결과를 DataFrame으로 변환
    # fetchall()을 사용하여 모든 행을 가져오고 pandas DataFrame으로 변환
    df = pd.read_sql_query("SELECT * FROM as_list", conn)

    # DataFrame을 CSV로 저장
    df.to_csv('customer.csv', index=False, encoding="cp949")

    # 데이터베이스 연결 종료
    conn.close()

    gr.Info("CSV로 저장하였습니다.")


# SQLite 데이터베이스에 연결 (파일이 없다면 자동으로 생성됨)
conn = sqlite3.connect('customer.db')  # 'customer.db'는 데이터베이스 파일 이름

# 데이터 조회
query = "SELECT * FROM as_list"

df = pd.read_sql_query(query, conn)

with gr.Blocks() as demo:

    with gr.Row():
        button1 = gr.Button("CSV로 저장하기")

    gr.DataFrame(df)

    # 각 버튼에 클릭 이벤트와 출력 연결
    button1.click(fn=button_action)

demo.launch()