The Great Courses Plus Downloader
A command-line interface (CLI) tool to download courses, lectures, and guidebooks from "The Great Courses Plus" (now Wondrium). This tool allows users to download content for offline viewing, with options for video quality, specific lecture ranges, and output directory customization.
Features
- Course and Lecture Download: Download entire courses or select specific lectures.
- Guidebook Download: Automatically download accompanying PDF guidebooks when available.
- Quality Selection: Choose your preferred video quality (e.g., 360p, 480p, 720p, 1080p).
- Lecture Range Selection: Download a specific range of lectures (e.g.,
1-5,3,1,3,5). - Resumable Downloads: Skips already downloaded lectures.
- Flexible Output: Specify the directory where downloaded content will be saved.
- Dry Run Mode: Preview what would be downloaded without actually downloading files.
- Logging: Detailed logging for debugging and monitoring progress.
Installation
Prerequisites
- Python 3.10+
ffmpeg(for merging video and audio streams)ffproble(for detecting if a file has a video or an audio stream)
You can install ffmpeg via your system's package manager (e.g., brew install ffmpeg on macOS, sudo apt-get install ffmpeg on Debian/Ubuntu) or download it from the official FFmpeg website.
Using uv
uv tool install tgc-dl
Usage
The tgc-dl tool is invoked from the command line.
tgc-dl [OPTIONS] COURSE_URLS...
Arguments
COURSE_URLS: One or more URLs of the courses you want to download.
Options
--cookies-file,-c: Path to thecookies.txtfile. This file is essential for authentication. (Default:tgcp-cookies.txtin the current working directory)--output-directory,-o: Path to where the downloads will be stored. (Default: Current working directory)--quality,-q: Quality of the video to download (min: 360, max: 1080). (Default: 1080)--lecture-range,-r: Download a specific range of lectures (e.g.,'1-5','3','1,3,5'). Only applicable when downloading a single course.--debug,-d: Print debug statements. (Default:False)--dry-run,-n: Dry-run; does not download anything. (Default:False)
Examples
Download a single course with default settings:
tgc-dl "https://www.wondrium.com/course/the-history-of-ancient-egypt"
Download a course to a specific directory and 720p quality:
tgc-dl -o /path/to/your/downloads -q 720 "https://www.wondrium.com/course/the-history-of-ancient-egypt"
Download specific lectures from a course:
tgc-dl -r "1-3,5" "https://www.wondrium.com/course/the-history-of-ancient-egypt"
Perform a dry run to see what would be downloaded:
tgc-dl -n "https://www.wondrium.com/course/the-history-of-ancient-egypt"
Obtaining cookies.txt
To download content, you need to provide a cookies.txt file containing your Wondrium (formerly The Great Courses Plus) session cookies. You can obtain this file using browser extensions like Export Cookies for Chrome or Cookie Quick Manager for Firefox.
- Log in to your Wondrium (The Great Courses Plus) account in your web browser.
- Use the extension to export your cookies in the "Mozilla
cookies.txt" format. - Save the file as
tgcp-cookies.txtin the same directory where you run thetgc-dlcommand, or specify its path using the--cookies-fileoption.
Contributing
Contributions are welcome! Please feel free to open issues or submit pull requests.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Disclaimer
This tool is intended for personal use only. Please respect the terms of service of "The Great Courses Plus" (Wondrium).
Metadata
Release files for tgc-dl 1.0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| tgc_dl-1.0.1.2-py3-none-any.whl | Python 3 | none | any | Details for tgc_dl-1.0.1.2-py3-none-any.whl |
Release files / tgc_dl-1.0.1.2-py3-none-any.whl
| Download URL | tgc_dl-1.0.1.2-py3-none-any.whl |
|---|---|
| Size | 21.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1d8868c7690ceebcf29d61f39a5e84703abaec85b2b056d98db4b9e0ab8d9739
|
|
BLAKE2b-256 checksum How to use checksums |
7c1ffeb2548d64db1b6a1ad97a0775b52937d4f0686cda4b7ae92048379244cb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.20
|
Security for tgc-dl 1.0.1.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.