Skip to content

Classes and scripts for working with Canvas and Gradescope

Notifications You must be signed in to change notification settings

MAHines/CanvasMAH

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 

Repository files navigation

CanvasMAH – Scripts for working with Canvas and Gradescope

This is a work in progress.

mahCanvas.py

Class for accessing Canvas using the CanvasAPI from UCFopen

WatermarkReports.py

Usage: python WatermarkReports gradebook.csv submissionsFolder

This script prepares lab report submissions downloaded from Canvas for Gradescope upload. – Converts any .docx files to .pdf – Finds the length of the longest pdf – Gets student ID from Canvas filename, matches to student name in gradebook, and adds student name at top of first page – Adds vertical page numbers to both sides of each page to help Gradescope auto-assign pages. – Adjusts all pdf's to the same number of pages to help Gradescope auto-assign pages. – Produces file Outline.pdf which is used for preparing assignment in Gradescope

This script requires the file 'Watermark.pdf' to be in the working directory. This file consists of a scanned set of pages with numbers running down the right and left hand sides. It is important that this be a scanned file for Gradescope matching. A pdf file with text does not work. I tried just having the numbers run down only the right hand side, but Gradescope would not auto-recognize this type of watermarking.

This script assumes that the files to be processed are in the directory passed as the argument submissionsFolder. The script will only handle .docx and .pdf files. Any other files will be deleted with no warning.

Some pdf files do not watermark properly. These files appear to have an opaque white background behind the text. A scanned file would probably not watermark correctly either.

CombineGradescopeCSVs.py

Usage: python CombineGradescopeCSVs.py

This script reads in all of the Gradescope data from all of the csv's in the cwd except 'allGrades.csv,' then combines these data into a single csv containing all of the grades, 'allGrades.csv' The script also calculates a total grade for each experiment that has a graded report. The processing is done in pandas.

About

Classes and scripts for working with Canvas and Gradescope

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages