diff --git a/api/ncnu.py b/api/ncnu.py index 88f6cbd..75ebce6 100644 --- a/api/ncnu.py +++ b/api/ncnu.py @@ -120,5 +120,21 @@ class NCNU(): 'score': data[8].text.replace('\n',''), 'mandatory': data[9].text.replace('\n','') } for data in (score.findAll('td') for score in scores[1:])] + else: + return None + + def getAbsenceLog(self): + response = self.session.get("https://ccweb.ncnu.edu.tw/student/absencelist.php") + table = find(response, 'tbody') + + if table: + logs = table.findAll('tr') + return [{ + 'id': data[0].text.replace('\n', ''), + 'semester': data[1].text.replace('\n', ''), + 'classname': data[2].text.replace('\n', ''), + 'date': data[3].text.replace('\n', ''), + 'time': data[4].text.replace('\n', '') + } for data in (log.findAll('td') for log in logs)] else: return None \ No newline at end of file diff --git a/main.py b/main.py index b0d94bc..232a690 100644 --- a/main.py +++ b/main.py @@ -44,5 +44,12 @@ if ncnu.status: for i in scores: print(i) space() + absenceLogs = ncnu.getAbsenceLog() + if absenceLogs: + for log in absenceLogs: + print(log) + else: + print("沒有任何缺曠課記錄") + space() else: print("NCNU 教務系統登入失敗")