Spaces:
Sleeping
Sleeping
import json | |
import gradio as gr | |
import pandas as pd | |
# Đọc dữ liệu từ file JSON | |
with open('Diemthi2024_processed_csl.json', 'r', encoding='utf-8') as file: | |
data = json.load(file) | |
# Hàm tra cứu điểm thi | |
def tra_cuu_diem_thi(sbd): | |
if sbd in data: | |
columns_diem = data["columns điểm"] | |
columns_tohop = data["columns tổ hợp"] | |
ket_qua = data[sbd] | |
diem_thi = [ket_qua["Điểm thi"]] | |
to_hop_list = ket_qua["Tổ hợp"] | |
to_hop_list_str = [] | |
for s1, d2, d3, s4, s5 in to_hop_list: | |
to_hop_list_str.append([s1, f"{d2:0.2f}", f"{d3:0.2f}", s4, s5]) | |
df_diem = pd.DataFrame(diem_thi, columns=columns_diem) | |
df_tohop = pd.DataFrame(to_hop_list_str, columns=columns_tohop) | |
return df_diem, df_tohop | |
else: | |
return "Không tìm thấy kết quả cho SBD này.", None | |
# Tạo giao diện Gradio | |
with gr.Blocks() as demo: | |
gr.Markdown("# Tra cứu điểm thi TN 2024 (Trường THPT Chuyên - Tỉnh Sơn La)") | |
sbd_input = gr.Textbox(label="Nhập SBD") | |
tra_cuu_btn = gr.Button("Tra cứu") | |
# out_diem = gr.Textbox(label="Điểm các môn thi", elem_classes="large-font") | |
#out_diem = gr.Markdown(label="Điềm các môn thi") | |
out_diem = gr.DataFrame(label="Điềm các môn thi", col_count=(9, "fixed"), row_count=(1, "fixed")) | |
out_tohop = gr.DataFrame(label="Các tổ hợp xét tuyển", col_count=(5, "fixed"), row_count=(15, "fixed")) | |
tra_cuu_btn.click(tra_cuu_diem_thi, inputs=sbd_input, outputs=[out_diem, out_tohop]) | |
# Chạy ứng dụng | |
demo.launch() |