extractExamEntries function
Implementation
List<ExamEntry> extractExamEntries(BeautifulSoup soup) {
List<ExamEntry> entries = [];
var diplomaDiv = soup.find('*', id: 'printareaDiplomaLines');
var table = diplomaDiv?.find('tbody')?.children;
if (table != null) {
// start at index 2 because of double header
for (int i = 2; i < table.length; i++) {
var children = table[i].children;
var subject = children.elementAtOrNull(0)?.text;
var yearGrade = children.length >= 4
? extractExamGrade(children.sublist(1, 4))
: null;
var examGrade = children.length >= 7
? extractExamGrade(children.sublist(4, 7))
: null;
if (subject != null && subject.isNotEmpty) {
entries.add(ExamEntry(
team: subject, yearGrade: yearGrade, examGrade: examGrade));
}
}
}
return entries;
}