A flexible and fast multi-platform media downloading system.
Project description
RedExtractor
is a Python library designed for fast, flexible, and reliable downloading of media content—primarily videos and audio streams—from YouTube and similar platforms (Facebook, Instagram). Leveraging the power of [yt-dlp] and modular design patterns, RedExtractor enables developers to easily integrate advanced media downloading capabilities into their applications.
The library supports multiple download strategies, including single-stream, parallel segmented downloads, and MP3 extraction. It provides real-time progress tracking, customizable format selection, and concurrent downloads using threads or processes. RedExtractor is built to be extensible, allowing for future download strategies easily integrated.
Whether you need to download a single video, playlist, batch process multiple streams, or extract audio, RedExtractor offers a user-friendly API and robust architecture to meet your needs. It is cross-platform, working seamlessly on Windows, macOS, and Linux.
Typical Use Cases:
- Downloading YouTube videos or audio for offline use
- Scripted downloading playlists or channels
- Extracting MP3 audio from video sources
- Integrating media download functionality into larger Python projects
- Tracking download progress in real-time for user feedback
Features
-
Multiple Download Strategies
Choose the best download approach for your needs:- Basic single-stream download
- Parallel download with segmented streams (Faster with m3u8 & dash files)
- MP3 audio-only download
-
Progress Tracking
Real-time download progress updates via ytdlp callbacks and hook. -
Format Selection & Customization
Easily select video/audio formats or quality preferences. -
Extensible & Modular
Designed with strategy patterns for easy addition of new download methods. -
User-friendly Simple, decent API to use fluently and choose downloading strategies, customizable client defined download progress displaying, designed to be the best.
-
Cross-platform Support
Works on Windows, macOS, and Linux systems. -
Shallow Concurrent file downloading support Easily configure the download system to support numbered downloads. (Not Fully Achieved, Error prone)
🛠 Technologies Used Python 3.12.1
ytd-lp (for YouTube downloads)
PulseBus (Event-Driven Infrastructure)
tqdm (for default terminal progress display)
unittest (for testing)
Installation
pip install RedExtractor
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file redextractor-0.2.2.tar.gz.
File metadata
- Download URL: redextractor-0.2.2.tar.gz
- Upload date:
- Size: 15.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9c567006fc22117c26458e3ed3e5b3f4a5f24e2d72553ac547e86185528409b1
|
|
| MD5 |
515a38082dd7cdd31df99f7714e34ae2
|
|
| BLAKE2b-256 |
1c9bccbf4e1000091767c2e4a11d5a8439f10eb4a786f44fda091bf37fa808c1
|
File details
Details for the file redextractor-0.2.2-py3-none-any.whl.
File metadata
- Download URL: redextractor-0.2.2-py3-none-any.whl
- Upload date:
- Size: 20.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dc102a64277a35da3dad41742501749fe6b24aa305470bf1c191b0355509b20b
|
|
| MD5 |
24bf8f932b81831bcabb93866a95ec60
|
|
| BLAKE2b-256 |
e7f8e3d340337a29d51d55e7434141955fcc52d497506c070c9b306691a4f91c
|