Archive your own Gradescope submissions across all student courses. This tool is built for SSO users: it opens a real browser once, saves Gradescope session cookies locally, then uses those cookies for faster HTTP downloads.
Gradescope does not publish an official student submissions API. The downloader uses the same web pages and internal JSON endpoints that the Gradescope website loads in your browser.
python -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -e .
python -m playwright install chromiumgradescope-bot loginA Chromium window opens. Complete SSO login and MFA manually. When Gradescope reaches the account page, the script saves cookies to .gradescope_cookies.json.
The cookie file is sensitive. It is ignored by git and should not be shared.
gradescope-bot downloadBy default, files are written under downloads/ and a downloads/manifest.json records every submission version, source URL, local path, score, and error.
Useful options:
gradescope-bot download --dry-run
gradescope-bot download --course-id 123456
gradescope-bot download --out-dir C:\Users\Example\GradescopeArchive
gradescope-bot download --force
gradescope-bot download --delay 0.5- Re-run
gradescope-bot loginif the session expires. - The downloader first tries Gradescope's direct zip endpoint, then the student-facing PDF endpoint. If both fail, it falls back to individual file URLs exposed by the submission JSON.
- Pure online assignments, image-only submissions, or UI changes on Gradescope may need parser updates.
- Use this for personal archival; avoid sending unnecessary traffic or redistributing course material.