Spaces:
Sleeping
Sleeping
File size: 1,636 Bytes
7601e22 09d54e2 13fa3f3 09d54e2 7601e22 13fa3f3 7601e22 267ec34 7601e22 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | import sqlite3
import pandas as pd
import datetime
def load():
query = '''
select * from classroom_info;
'''
db = sqlite3.connect("classrooms.db")
data = pd.read_sql_query(query, db)
return data
def generate(course_name, teacher_name, selected_day):
result = load()
time = result.at[0, 'cr_cono']
if course_name != "":
result = result[result['cr_cnam'].str.contains(course_name, na=False)]
if teacher_name != "":
result = result[result['cr_tenam'].str.contains(teacher_name, na=False)]
if result.empty:
result = pd.DataFrame(columns=['課號', '班次', '課程名稱', '授課教師', '教室', '時間'])
return time, result.to_html(index=False, escape=False)
day_mapping = {
"不限": "無",
"星期一": "一",
"星期二": "二",
"星期三": "三",
"星期四": "四",
"星期五": "五"
}
day = day_mapping[selected_day]
if day != "無":
result = result[result['cr_time'].str.contains(day, na=False)]
result['cr_cnam'] = result.apply(
lambda row: f'<a href="https://coursemap.aca.ntu.edu.tw/course_map_all/course.php?code={row["cr_cono"].replace(" ", "+")}" target="_blank">{row["cr_cnam"]}</a>',
axis=1
)
# result = result.drop(columns=['cr_cono'])
result = result.rename(columns={
'cr_cono': '課號',
'cr_clas': '班次',
'cr_cnam': '課程名稱',
'cr_tenam': '授課教師',
'cr_no': '教室',
'cr_time': '時間'
})
return time, result.to_html(index=False, escape=False) |