Started adding Spotify Features
Added support for tracks and albums
This commit is contained in:
@ -3,6 +3,7 @@ from deemix.api.deezer import APIError, USER_AGENT_HEADER
|
||||
from deemix.utils.taggers import tagID3, tagFLAC
|
||||
from deemix.utils.pathtemplates import generateFilename, generateFilepath, settingsRegexAlbum, settingsRegexArtist
|
||||
from deemix.utils.misc import changeCase
|
||||
from deemix.utils.spotifyHelper import get_trackid_spotify, get_albumid_spotify
|
||||
import os.path
|
||||
from os import makedirs, remove
|
||||
from requests import get
|
||||
@ -565,6 +566,15 @@ def download_track(dz, id, settings, overwriteBitrate=False):
|
||||
result = downloadTrackObj(dz, trackAPI, settings, overwriteBitrate)
|
||||
return after_download_single(result, settings)
|
||||
|
||||
def download_spotifytrack(dz, id, settings, overwriteBitrate=False):
|
||||
track_id = get_trackid_spotify(dz, id, settings['fallbackSearch'])
|
||||
if track_id == "Not Enabled":
|
||||
print("Spotify Features is not setted up correctly.")
|
||||
if track_id != 0:
|
||||
return download_track(dz, track_id, settings, overwriteBitrate)
|
||||
else:
|
||||
print("Track not found on deezer!")
|
||||
return None
|
||||
|
||||
def download_album(dz, id, settings, overwriteBitrate=False):
|
||||
albumAPI = dz.get_album(id)
|
||||
@ -590,6 +600,16 @@ def download_album(dz, id, settings, overwriteBitrate=False):
|
||||
|
||||
return after_download(playlist, settings)
|
||||
|
||||
def download_spotifyalbum(dz, id, settings, overwriteBitrate=False):
|
||||
album_id = get_albumid_spotify(dz, id)
|
||||
if album_id == "Not Enabled":
|
||||
print("Spotify Features is not setted up correctly.")
|
||||
if album_id != 0:
|
||||
return download_album(dz, album_id, settings, overwriteBitrate)
|
||||
else:
|
||||
print("Album not found on deezer!")
|
||||
return None
|
||||
|
||||
def download_artist(dz, id, settings, overwriteBitrate=False):
|
||||
artistAPI = dz.get_artist_albums(id)
|
||||
for album in artistAPI['data']:
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
from deemix.api.deezer import Deezer
|
||||
from deemix.utils.misc import getIDFromLink, getTypeFromLink, getBitrateInt
|
||||
from deemix.app.downloader import download_track, download_album, download_playlist, download_artist
|
||||
from deemix.app.downloader import download_track, download_album, download_playlist, download_artist, download_spotifytrack, download_spotifyalbum
|
||||
from os import system as execute
|
||||
|
||||
dz = Deezer()
|
||||
@ -21,6 +21,10 @@ def downloadLink(url, settings, bitrate=None):
|
||||
folder = download_playlist(dz, id, settings, forcedBitrate)
|
||||
elif type == "artist":
|
||||
download_artist(dz, id, settings, forcedBitrate)
|
||||
elif type == "spotifytrack":
|
||||
folder = download_spotifytrack(dz, id, settings, forcedBitrate)
|
||||
elif type == "spotifyalbum":
|
||||
folder = download_spotifyalbum(dz, id, settings, forcedBitrate)
|
||||
else:
|
||||
print("URL not supported yet")
|
||||
return None
|
||||
|
Reference in New Issue
Block a user