def get_course_status(course_num):
client = Client()
subject = client.get_course_subject(course_num)
if subject is None:
return None
semester = get_semester()
subject_url = "http://classes.cornell.edu/browse/roster/" + semester + "/subject/" + subject
subject_page = requests.get(subject_url)
subject_page.raise_for_status()
subject_bs4 = bs4.BeautifulSoup(subject_page.text, "html.parser")
course_code_tags = subject_bs4.find_all("strong", class_="tooltip-iws")
for tag in course_code_tags:
course_code = int(tag.getText().strip())
if course_num == course_code:
section = tag.parent.parent.parent
status = section.find_all('li', class_ = "open-status")[0].i["class"][-1]
if "open-status-open" in status:
return "open"
if "open-status-closed" in status:
return "closed"
if "open-status-warning" in status:
return "waitlist"
if "open-status-archive" in status:
return "archive"
评论列表
文章目录