Exemple #1
0
def extract_assignments(c: canvasapi.canvas.Course):
    for ass in c.get_assignments():
        # `ass.description` might be outdated so we have to make a separate request
        html_to_parse = c.get_assignment(ass.id).description
        if html_to_parse is None:
            continue
        # Sometimes file links might be broken, sometimes the Canvas API just returns nonsense
        # yield from map(c.get_file, extract_file_ids(html_to_parse))
        yield from file_extractor(c, extract_file_ids(html_to_parse))
def get_assignment(course: canvasapi.canvas.Course, assignment_id: int):
    """
    :param course: canvas course object
    :return: a canvas assignment is returned given its id
    """
    return course.get_assignment(assignment_id)