Skip to main content

A simple crunchyroll downloader

Project description

crdl 🎬

A command-line tool for downloading content from Crunchyroll with customizable quality options and output settings.

Python Version License PyPI version PyPI Downloads

✨ Features

  • 📺 Download specific episodes, seasons, or entire series
  • 🎨 Choose between different video quality settings
  • 🔐 Automatic token management and stream cleanup
  • 💻 Cross-platform compatibility (Windows, macOS, Linux)
  • 🔑 DRM support with Widevine CDM

📋 Prerequisites

  1. 🐍 Python 3.8+
  2. 📥 N_m3u8DL-RE (in PATH)
  3. 🎬 ffmpeg (in PATH)
  4. 📦 mkvmerge (in PATH)
  5. 🔓 mp4decrypt (in PATH)

For DRM content: Place device.wvd in ~/.config/crdl/widevine/

⚠️ Note: Due to legal reasons, this CDM file is not provided with the project.

📥 Installation

pip install crdl

🚀 Usage

# First time setup with credentials
crdl -u YOUR_USERNAME -p YOUR_PASSWORD -e EPISODE_ID

# Download episode
crdl -e EPISODE_ID

# Browse and Download entire series
crdl -s SERIES_ID

⚙️ Command-Line Options

options:
  -h, --help            show this help message and exit
  --version             Show version information and exit

Authentication:
  --username USERNAME, -u USERNAME
                        Crunchyroll username
  --password PASSWORD, -p PASSWORD
                        Crunchyroll password

Content Selection:
  --series SERIES, -s SERIES
                        Series ID to download
  --season SEASON       Season ID to download
  --episode EPISODE, -e EPISODE
                        Episode ID to download
  --locale LOCALE       Content locale (default: en-US)
  --audio AUDIO, -a AUDIO
                        Audio languages to download (comma-separated, e.g., "ja-JP,en-US" or "all")

Output Options:
  --output OUTPUT, -o OUTPUT
                        Output directory
  --verbose, -v         Enable verbose logging
  --quality {1080p,720p,best,worst}, -q {1080p,720p,best,worst}
                        Video quality (1080p, 720p, best, or worst)
  --release-group RELEASE_GROUP, -r RELEASE_GROUP
                        Release group name for filename

🗂️ Configuration

  ├── credentials.json  # Saved credentials
  ├── json/            # API responses
  ├── widevine/        # DRM files
  │   └── device.wvd   # Required for DRM
  └── logs/            # Application logs

❓ Troubleshooting

  • 🔑 Verify your Crunchyroll credentials and subscription status
  • 📦 Ensure all required tools are updated and in your PATH
  • 🔍 Run with -v for detailed logging
  • 📝 Check logs at: ~/.config/crdl/logs/crunchyroll_downloader.log

⚠️ Disclaimer

This project is for educational purposes only. Please respect Crunchyroll's terms of service and copyright regulations. You need a Crunchyroll Premium subscription to access premium content. This tool is not affiliated with, maintained, authorized, sponsored, or officially associated with Crunchyroll LLC or any of its subsidiaries or affiliates. Use of this application may violate Crunchyroll's Terms of Service and could be illegal in your country. You are solely responsible for your use of this software.

👥 Contributors

TanmoyTheBoT

📄 License

This project is licensed under the MIT License.


© TanmoyTheBoT 2025

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

crdl-0.0.8.tar.gz (38.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

crdl-0.0.8-py3-none-any.whl (39.0 kB view details)

Uploaded Python 3

File details

Details for the file crdl-0.0.8.tar.gz.

File metadata

  • Download URL: crdl-0.0.8.tar.gz
  • Upload date:
  • Size: 38.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for crdl-0.0.8.tar.gz
Algorithm Hash digest
SHA256 e377eff11028ef0e9e82a53550ffb131141070dd839b2a8a2eb2822be98015e4
MD5 c4b06cf71032b9912f87f64701e26b29
BLAKE2b-256 45af741dc65963ee5486b27f4ea8f70e14af1eb98d43961a3797387ffc1d730e

See more details on using hashes here.

File details

Details for the file crdl-0.0.8-py3-none-any.whl.

File metadata

  • Download URL: crdl-0.0.8-py3-none-any.whl
  • Upload date:
  • Size: 39.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for crdl-0.0.8-py3-none-any.whl
Algorithm Hash digest
SHA256 f105587df306b0606d881f3af2a95fa4a94eb25af9fe47457c7dbde6d082d3f8
MD5 b4ad93f5af9cc98b95a689656d156ad6
BLAKE2b-256 42652dd947700920a232ba5c0347a4faab3f8c3c4ecb02cf2ee46bf4c5f89799

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page