def parse_tasks(tasks, year):
db = []
for task in tasks:
if not isinstance(task, bs4.Tag):
continue
task = task.td
base_name = task.strong.text.strip()
next_tag = task.strong.next_sibling.next_sibling.name
if next_tag == 'span':
name = base_name
maximum = task.span.text.strip()
results = parse_results(task.table, year)
db.append({'category': 'common', 'name': name,
'max': int(maximum), 'students': results,
'year': year})
else:
for st in task.findAll('font'):
if st.previous.name != 'div':
continue
name = st.text.strip()
category = base_name
maximum = st.findNext('span').text.strip()
results = parse_results(st.findNext('table'), year)
db.append({'category': category, 'name': name,
'max': int(maximum), 'students': results,
'year': year})
return db
评论列表
文章目录