Skip to main content

lyriath

Search, explore and download Lossless and Hi-Res music from Qobuz. It just works™ (2025).

Features

  • Download FLAC and MP3 files from Qobuz
  • Explore and download music directly from your terminal with interactive or lucky mode
  • Download albums, tracks, artists, playlists and labels with download mode
  • Download music from last.fm playlists (Spotify, Apple Music and Youtube playlists are also supported through this method)
  • Queue support on interactive mode
  • Effective duplicate handling with own portable database
  • Support for albums with multiple discs
  • Support for M3U playlists
  • Downloads URLs from text file
  • Extended tags
  • And more

Getting started

You'll need an active subscription

Install lyriath with pip

Linux / MAC OS
pip3 install --upgrade lyriath
Windows
pip3 install windows-curses
pip3 install --upgrade lyriath

Run lyriath and enter your credentials

Linux / MAC OS
lyriath
Windows
lyriath.exe

If something fails, run lyriath -r to reset your config file.

Examples

Download mode

Download URL in 24B<96khz quality

lyriath dl https://play.qobuz.com/album/qxjbxh1dc3xyb -q 7

Download multiple URLs to custom directory

lyriath dl https://play.qobuz.com/artist/2038380 https://play.qobuz.com/album/ip8qjy1m6dakc -d "Some pop from 2020"

Download multiple URLs from text file

lyriath dl this_txt_file_has_urls.txt

Download albums from a label and also embed cover art images into the downloaded files

lyriath dl https://play.qobuz.com/label/7526 --embed-art

Download a Qobuz playlist in maximum quality

lyriath dl https://play.qobuz.com/playlist/5388296 -q 27

Download all the music from an artist except singles, EPs and VA releases

lyriath dl https://play.qobuz.com/artist/2528676 --albums-only

Last.fm playlists

Last.fm has a new feature for creating playlists: you can create your own based on the music you listen to or you can import one from popular streaming services like Spotify, Apple Music and Youtube. Visit: https://www.last.fm/user/<your profile>/playlists (e.g. https://www.last.fm/user/vitiko98/playlists) to get started.

Download a last.fm playlist in the maximum quality

lyriath dl https://www.last.fm/user/vitiko98/playlists/11887574 -q 27

Run lyriath dl --help for more info.

Interactive mode

Run interactive mode with a limit of 10 results

lyriath fun -l 10

Type your search query

Logging...
Logged: OK
Membership: Studio


Enter your search: [Ctrl + c to quit]
- fka twigs magdalene

lyriath will bring up a nice list of releases. Now choose whatever releases you want to download (everything else is interactive).

Run lyriath fun --help for more info.

Lucky mode

Download the first album result

lyriath lucky playboi carti die lit

Download the first 5 artist results

qobuz-dl lucky joy division -n 5 --type artist

Download the first 3 track results in 320 quality

qobuz-dl lucky eric dolphy remastered --type track -n 3 -q 5

Download the first track result without cover art

qobuz-dl lucky jay z story of oj --type track --no-cover

Run qobuz-dl lucky --help for more info.

Other

Reset your config file

qobuz-dl -r

By default, qobuz-dl will skip already downloaded items by ID with the message This release ID ({item_id}) was already downloaded. To avoid this check, add the flag --no-db at the end of a command. In extreme cases (e.g. lost collection), you can run qobuz-dl -p to completely reset the database.

Usage

usage: qobuz-dl [-h] [-r] {fun,dl,lucky} ...

The ultimate Qobuz music downloader.
See usage examples on https://github.com/vitiko98/qobuz-dl

optional arguments:
  -h, --help      show this help message and exit
  -r, --reset     create/reset config file
  -p, --purge     purge/delete downloaded-IDs database

commands:
  run qobuz-dl <command> --help for more info
  (e.g. qobuz-dl fun --help)

  {fun,dl,lucky}
    fun           interactive mode
    dl            input mode
    lucky         lucky mode

Module usage

Using qobuz-dl as a module is really easy. Basically, the only thing you need is QobuzDL from core.

import logging
from lyriath.core import QobuzDL

logging.basicConfig(level=logging.INFO)

email = "your@email.com"
password = "your_password"

qobuz = QobuzDL()
qobuz.get_tokens() # get 'app_id' and 'secrets' attrs
qobuz.initialize_client(email, password, qobuz.app_id, qobuz.secrets)

qobuz.handle_url("https://play.qobuz.com/album/va4j3hdlwaubc")

Attributes, methods and parameters have been named as self-explanatory as possible.

A note about Qo-DL

qobuz-dl is inspired in the discontinued Qo-DL-Reborn. This tool uses two modules from Qo-DL: qopy and spoofer, both written by Sorrow446 and DashLt.

Disclaimer

  • This tool was written for educational purposes. I will not be responsible if you use this program in bad faith. By using it, you are accepting the Qobuz API Terms of Use.
  • qobuz-dl is not affiliated with Qobuz

Metadata

Release files for lyriath 0.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for lyriath 0.1.3
File Size Uploaded
lyriath-0.1.3.tar.gz 25.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for lyriath 0.1.3
File Interpreter ABI Platform
lyriath-0.1.3-py3-none-any.whl Python 3 none any Details

Total release size: 51.6 kB

Release files / lyriath-0.1.3.tar.gz

Download URL lyriath-0.1.3.tar.gz
Size 25.0 kB
Tags Source
SHA-256 checksum
How to use checksums
6adaff16edcae809ac488a7bcc89733b86838e42954d995efe6c77c3a82385dd
BLAKE2b-256 checksum
How to use checksums
0f4d878f4dae691a9f46c886a614373fb6598d11b6d8bbfc0d4ecc1da95eb671
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.15 {"installer":{"name":"uv","version":"0.9.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Fedora Linux","version":"43","id":"","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / lyriath-0.1.3-py3-none-any.whl

Download URL lyriath-0.1.3-py3-none-any.whl
Size 26.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
885cdc5c3eb784b32afa6426aabd26e45844059dc23ba926eb3e05205cdda300
BLAKE2b-256 checksum
How to use checksums
33980d0a75c8714aa478e625d64bc911516770e4899bf6310767f3ba9c336bba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.15 {"installer":{"name":"uv","version":"0.9.15","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Fedora Linux","version":"43","id":"","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.1.3 This release

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page