Skip to content

beast-nev/canvas-downloader

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

canvas-downloader

Tool designed to make it easier to download course materials from Canvas (en masse). Configured originally for WPI's Canvas but can be easily modified for other schools.

Disclaimer

This repository contains a proof of concept tool designed to demonstrate how files can be programmatically accessed and downloaded from Canvas using an API created here https://github.com/ucfopen/canvasapi. It is provided for educational purposes only and is not intended for practical use. Important Notes:

  • Access Tokens: The tool requires a personal access token generated by the user for authentication with the Canvas API. Users are responsible for generating and using their tokens in accordance with their institution’s policies.
  • Policy Awareness: This tool is strictly for demonstration purposes and should not be used in ways that violate Canvas’s policies or the terms of service of any institution. This repository is public for the purpose of showcasing the technical implementation on my personal website.

Step by Step guide

  1. Clone the repo.
  2. Run pip install -r depend.txt.
  3. Add your API token from before to the .env file key API_TOKEN.
  4. Run the script with python main.py and it will prompt you for each of your courses if you want to download it or not.
  5. Once you have selected your courses it will create a directory named data and download each courses files to subdirectories named after the course name.

Output configuration and Notes

  1. Edit the variable at the top of the file ALLOWED_FILE_TYPES to choose what files you want. Default is pdf, pptx, and docx.
  2. Edit the variable at the top of the file OUTPUT_DIR to be what you want. Default is data.
  3. Files with the same name will be overwritten.

Resources that helped me make this

About

Tool to download all course files from Canvas

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages