Skip to content

FallingLights/Teachable-dl

Repository files navigation

Contributors Forks Stargazers Issues MIT License


Logo

Teachable-dl

A downloader for downloading courses from the Teachable platforms.

Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. License
  7. Contact
  8. Acknowledgments

About The Project

Teachable-dl is a Python-based downloader for downloading courses from the Teachable platform. It provides a command-line interface for easily downloading course materials such as videos, slides, and other resources, allowing users to access course content offline at their own pace. With Teachable-dl, users can conveniently download and organize all course materials in a single location, enabling easy access and review of course content without the need for an active internet connection.

Star this repository if you find it valuable and worth maintaining.

👁 Watch this repository to get notified about new releases, issues, etc.

(back to top)

Built With

  • Python
  • Selenium
  • yt-dlp

(back to top)

Getting Started

To get the program up and running follow these simple steps.

Prerequisites

This is an example of how to list things you need to use the software and how to install them. (You can also run this script on a windows machine)

For Linux users

  • yt-dlp
python3 -m pip install -U yt-dlp
  • ffmpeg
sudo apt install ffmpeg
  • wget
sudo apt install wget
  • Chrome
sudo apt install chromium-browser

For Windows users

python3 -m pip install -U yt-dlp

Make sure to add ffmpeg to your PATH

Installation

  1. Clone the repo
git clone https://github.com/FallingLights/Teachable-Dl.git
  1. Enter to the project
cd Teachable-Dl
  1. Set up the environment
python3 -m venv env
  1. Activate the environment
source env/bin/activate
  1. Install the requirements
pip install -r requirements.txt

(back to top)

Usage

Activate the environment

source env/bin/activate

Run the program

python3 main.py --url <course_url> --email <email> --password <password>

or run with manual login

python3 main.py --url <course_url> --man_login_url <man_login_url> --verbose

Make sure to navigate to the url within the first tab and check the console for an exact url match.

For a list of all available options and up-to-date parameters, use the --help command:

python main.py --help

Roadmap

See the open issues for a full list of proposed features (and known issues).

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

License

Distributed under the GNU LGPLv3 License. See LICENSE.txt for more information.

(back to top)

Contact

@fallinglight_s

Project Link: https://github.com/FallingLights/Teachable-Dl

(back to top)

Acknowledgments

(back to top)