canvas-scraper syncs your Canvas course files to your laptop, skips the 2 GB lecture recordings, and emails you what's new. Every day at noon. While you do anything else.
python src/main.py --setup
Python 3.9+, a Canvas API token, and ten minutes. That's the whole setup.
📱 Using an iPad? Use the GitHub template — zero local setup.
It runs. New slides and tutorial sheets land in folders that mirror your Canvas layout, course by course.
It skips a 1.4 GB lecture recording, a textbook PDF you were never going to open, and everything you already have.
The digest email arrives: what's new, what was skipped (with links), what's due.
Nothing. That's the feature.
Use the GitHub template — click, add 4 secrets, enable Actions. The scraper runs on GitHub's servers and pushes files to Google Drive / Dropbox. Your iPad picks them up from there.
One email a day, only when something happened. New files, new announcements, upcoming deadlines.
Skipped files come with links, so on the rare day you actually want the lecture recording, it's one click. Not seventeen.
Due Friday: CS2103T tP milestone v1.3
Size limits and filters are yours to change in one YAML file. The defaults are just well-rested.