Skip to main content

A lossless and hi-res music downloader for Qobuz.

Project description

qobuz-dlp

A lossless and hi-res music downloader for Qobuz.

This is a fork of the original repo which has gone unmaintained.

PyPI Version

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

  • Get an active subscription to Qobuz
  • Install qobuz-dlp with pip
pip3 install windows-curses # Windows only
pip3 install --upgrade qobuz-dlp
  • Run qobuz-dlp and enter your credentials
qobuz-dlp # or qobuz-dlp.exe for Windows

Usage

A complete lossless and hi-res music downloader for Qobuz.
See usage examples at https://github.com/infojunkie/qobuz-dlp.py?tab=readme-ov-file#examples.

options:
  -h, --help         show this help message and exit
  -v, --version      show version information
  -r, --reset        create/reset config file
  -p, --purge        purge/delete downloaded-IDs database
  -c, --show-config  show configuration
  --debug            show debug information

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

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

Examples

Download mode

Download URL in 24B<96khz quality

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

Download multiple URLs to custom directory

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

Download multiple URLs from text file

qobuz-dlp dl this_txt_file_has_urls.txt

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

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

Download a Qobuz playlist in maximum quality

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

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

qobuz-dlp 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

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

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

Interactive mode

Run interactive mode with a limit of 10 results

qobuz-dlp fun -l 10

Type your search query, then:

Logging...
Logged: OK
Membership: Studio


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

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

Run qobuz-dlp fun --help for more info.

Lucky mode

Download the first album result

qobuz-dlp lucky playboi carti die lit

Download the first 5 artist results

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

Download the first 3 track results in 320 quality

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

Download the first track result without cover art

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

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

Other

Reset your config file

qobuz-dlp -r

By default, qobuz-dlp 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-dlp -p to completely reset the database.

Development

  • Install poetry
  • poetry install && poetry build && pip install .
import logging
from qobuz_dl.core import QobuzDL

logging.basicConfig(level=logging.INFO)

qobuz = QobuzDL()
qobuz.get_tokens() # get 'app_id', 'secrets' and 'private_key' attrs
qobuz.initialize_client(qobuz.app_id, qobuz.secrets, qobuz.private_key, '/path/to/token_file')

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

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

Disclaimer and credits

  • By using this tool, you acknowledge the Qobuz API Terms of Use
  • qobuz-dlp is not affiliated with Qobuz
  • qobuz-dlp is a continuation of the work started with qobuz-dl, written by vitiko98
  • qobuz-dl was inspired by the discontinued Qo-DL-Reborn. This tool uses two modules from Qo-DL: qopy and spoofer, both written by Sorrow446 and DashLt.

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

qobuz_dlp-1.0.0.tar.gz (37.2 kB view details)

Uploaded Source

Built Distribution

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

qobuz_dlp-1.0.0-py3-none-any.whl (39.6 kB view details)

Uploaded Python 3

File details

Details for the file qobuz_dlp-1.0.0.tar.gz.

File metadata

  • Download URL: qobuz_dlp-1.0.0.tar.gz
  • Upload date:
  • Size: 37.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.10.12 Linux/6.17.9-76061709-generic

File hashes

Hashes for qobuz_dlp-1.0.0.tar.gz
Algorithm Hash digest
SHA256 f9baa54041f8f8ba5b6154f755f5eb9fe13637bb88e032c951caf76e01649f8a
MD5 275d77702427e2be669d4847f32ba3be
BLAKE2b-256 f51e197c250921091dc7f5817624b3b5294fb71278fab18b0b5ad30b1313393f

See more details on using hashes here.

File details

Details for the file qobuz_dlp-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: qobuz_dlp-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 39.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.10.12 Linux/6.17.9-76061709-generic

File hashes

Hashes for qobuz_dlp-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 44868d1647e39056e28980b6f593979830365a7c14d5e56dd214fe7ffa7b5963
MD5 a8ee27a0bd0dba29af4261fc4ebc95bd
BLAKE2b-256 66e40bd0f51f7412853836eda18148522ebdc9efaf3574f80b1393ebb01816b2

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