A python script that pulls artists from your spotify or lastfm accounts and uses deemix to download them. Allows full access to deemix options via its config.json file. You can use any lastfm account as a source (no authentication is needed to access user artists), but login access is required for spotify.
git clone https://git.ayew.host/deafmute/deemix-librip.git && cd deemix-librippip install -r requirements.txtpython deemix-librip.py config- Modify
./config/config.jsonto your desire python deemix-librip.py <SOURCES...>
Usage: deemix_librip.py [OPTIONS] SOURCES...
Supported SOURCES values (may specify multiple):
lastfm use lastfm as a source of artists
spotify use spotify as a source of artists
config generates a default deemix config at ./config/config.json if this file does not exist, and exits.
Options:
--lazy Run lazy artist match instead of interactive
(download all search matches for artists)
--lazy-accuracy INTEGER Under lazy mode, download only the first INTEGER
matches
--limit INTEGER Set maximum number of artists fetch from each
source (Default: 500)
--help Show this message and exit.
This script for obvious reasons may have a very long runtime. You may want to consider running on a long uptime machine (e.g. a server) in tmux or screen. If you run under --lazy mode, the script requires no human intervention after you enter your deezer arl cookie. The script only needs user intervention whilst fetching artists in order to authenticate to the APIs. This processes should not take more then a few minutes.
For lastfm, you need to generate an api key here. The required information is public and no further auth is needed.
For spotify, you need to generate a client id and its corresponding secret here. After creation, go into your created application, select Edit Settings and set the redirect uri to https://example.com.You will also need to provide access to your account. The script will provide a link to a spotify OAuth login - on most destktops this should auto-open in your browser, otherwise you can copy and paste it. After login, it will redirect you to a URL beginning with "https://example.com". Copy and paste this whole URL into the CLI when prompted.
The deezer2 folder contains the deezer-python library modified to be in the deezer2 namespace instead of the deezer namespace. This is because deezer-py, a dependancy of deemix, also uses that namespace. See deezer2/LICENSE for copyright details concerning that folder.
Copyright 2020 deemix-librip
Licensed under the terms of the GPL Version 3 or optionally, any later versions.