Skip to content
/ tiddl Public

Tidal Downloader - download tracks with single Python package ✨

License

Notifications You must be signed in to change notification settings

oskvr37/tiddl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tidal Downloader

TIDDL is the Python CLI application that allows downloading Tidal tracks. Fully typed, only 2 requirements.

GitHub top language PyPI - Version GitHub commits since latest release

It's inspired by Tidal-Media-Downloader - currently not mantained project. This repository will contain features requests from that project and will be the enhanced version.

Installation

Install package using pip

pip install tiddl

After installation you can use tiddl to set up auth token

$ tiddl
> go to https://link.tidal.com/xxxxx and add device!
authenticated!
token expires in 7 days

Use tiddl -h to show help message

CLI

After authentication - when your token is ready - you can start downloading!

You can download tracks albums playlists artists albums

  • tiddl -s -q high sets high quality as default quality
  • tiddl <input> downloads with high quality
  • tiddl <input> -q master downloads with best possible quality
  • tiddl 284165609 -p my_folder -o "{artist} - {title}" downloads track to my_folder/{artist} - {title}.flac
  • tiddl track/284165609 -p my_folder -o "{artist} - {title}" -s same as above, but saves my_folder as default download path and {artist} - {title} as default file format

Valid input

Modules

You can also use TIDDL as module, it's fully typed so you will get type hints

from tiddl import TidalApi, Config

config = Config()

api = TidalApi(
	config["token"],
	config["user"]["user_id"],
	config["user"]["country_code"]
)

album_id = 284165608

album = api.getAlbum(album_id)

print(f"{album["title"]} has {album["numberOfTracks"]} tracks!")

Testing

python -m unittest tiddl/tests.py

Resources

Tidal API wiki