CLI/TUI Music & Book Downloader. Porque lo bueno siempre se comparte.
Project description
Cantares
"Porque lo bueno siempre se comparte" Developed with love and written in Python. 🐍💖
Cantares is an open-source CLI/TUI application for downloading high-quality music and books. It integrates with Deezer APIs (via deezspot logic) and scraping sources for books.
Features
- Music Module:
- Supports Deezer and Spotify links.
- Downloads in FLAC or MP3 (320kbps) (requires ARL token).
- Metadata handling (Cover Art, ID3 Tags).
- Fallback to YouTube if Deezer download fails.
- Books Module:
- Search and download books from Anna's Archive / LibGen.
- User Interface:
- Terminal User Interface (TUI) powered by Textual.
- Command Line Interface (CLI) for scripting.
Installation
Prerequisites
- Python 3.10+
- FFmpeg (for audio post-processing)
Steps
-
Clone the repository:
git clone https://github.com/AldraAV/Cantares.git cd Cantares
-
(Optional) Create a virtual environment:
python -m venv .venv # Windows .venv\Scripts\activate # Linux/Mac source .venv/bin/activate
-
Install dependencies:
pip install -e .
Configuration
Create a .env file in the root directory to enable High Quality music downloads:
DEEZER_ARL=your_deezer_arl_token_here
# Optional:
SPOTIFY_CLIENT_ID=your_id
SPOTIFY_CLIENT_SECRET=your_secret
Usage
TUI Mode
Launch the interactive interface:
python -m cantares tui
CLI Mode
Music:
python -m cantares music "Artist - Song Name"
# or
python -m cantares music https://open.spotify.com/track/...
Books:
python -m cantares books "Clean Code"
Project Structure
cantares/: Main package source.cantares/music/: Music download logic (DeezEngine, Spotify, YouTube).cantares/books/: Book scraping logic.cantares/ui/: Textual interface code.
License
This project is for educational purposes only.
Project details
Release history Release notifications | RSS feed
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 cantares-0.1.0.tar.gz.
File metadata
- Download URL: cantares-0.1.0.tar.gz
- Upload date:
- Size: 5.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3a125c4cfde1d50ef2868e21e35c159fbd17770020a2cd0c3813a05748fb28d7
|
|
| MD5 |
8256bbf85bb337a8ab892fde5e7b6a3c
|
|
| BLAKE2b-256 |
c60227766ab50b0f4a941dfb86431cf75c06cb5a10640c8a5b51920ed2812fd8
|
File details
Details for the file cantares-0.1.0-py3-none-any.whl.
File metadata
- Download URL: cantares-0.1.0-py3-none-any.whl
- Upload date:
- Size: 5.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2361f753e66b190ee119352052c43b59ff69405f36f73080d85a708a1b212808
|
|
| MD5 |
07a4e50f7846a43ebbccaf648c75823f
|
|
| BLAKE2b-256 |
909601dfa359af9c3fc37cc1f8e6c3757cd67b9c3378760d48cb800403c539b9
|