def getSemesterResults(): roll_number = request.json['roll'] page = ProfilePage(getContent(roll_number)[0]) semester_list = [] for table in page.getAllResultTables: res = ResultsTableParser(table) totalsubjects = res.getAllSubjects sem_marks = [] for subject in totalsubjects: subject_details_obj = SubjectParser(subject) subject_details = [ subject_detail.string for subject_detail in subject_details_obj.getSubjectDetails ] subject_details_json = { "code": subject_details[0], "name": subject_details[1], "mid_sem": subject_details[2], "internals": subject_details[3], "assignement": subject_details[4], "quiz": subject_details[5], "end_sem": subject_details[6], "total": subject_details[7], "grade": subject_details[8] } sem_marks.append(subject_details_json) if sem_marks: semester_list.append(sem_marks) return jsonify(semester_list)
def getBasicProfile(): roll_number = request.json['roll'] page = ProfilePage(getContent(roll_number)) parsed = [ProfileParser(details).getDetails for details in page.getProfile] profile_list = [BeautifulSoup(str(item)).text for item in parsed[0]] profile_json = { "name": profile_list[0], "roll": profile_list[1], "branch": profile_list[2], "rank": profile_list[3] } return jsonify(profile_json)
def getCGPA(): roll_number = request.json['roll'] page = ProfilePage(getContent(roll_number)[0]) totalsems = [] for table in page.getAllResultTables: res = ResultsTableParser(table) status_list = res.getSemesterStatus if status_list: status_json = { "semester": status_list[2], "status": status_list[3], "sgpa": status_list[0], "cgpa": status_list[1] } totalsems.append(status_json) return jsonify(totalsems)
def getBasicProfile(): roll_number = request.json['roll'] page = ProfilePage(getContent(roll_number)[0]) img = page.getImage new_img = BeautifulSoup(str(img), 'html.parser') image = new_img.find('img')['data-src'] parsed = [ProfileParser(details).getDetails for details in page.getProfile] profile_list = [ BeautifulSoup(str(item), 'html.parser').text for item in parsed[0] ] profile_json = { "name": profile_list[0], "roll": profile_list[1], "branch": profile_list[2], "rank": profile_list[3], "img": image } return jsonify(profile_json)
def getBasicProfil(roll_number): page = ProfilePage(getContent(roll_number)) img = page.getImage new_img = BeautifulSoup(str(img), 'html.parser') print(new_img.find('img')['src']) parsed = [ProfileParser(details).getDetails for details in page.getProfile] profile_list = [BeautifulSoup(str(item),'html.parser').text for item in parsed[0]] profile_json = { "name": profile_list[0], "roll": profile_list[1], "branch": profile_list[2], "rank": profile_list[3], }
def click_profile_link(self): self.selenium.find_element(*self._profile_link_locator).click() from pages.profile import ProfilePage return ProfilePage(self.testsetup)