Login About Gallery
Deezer++
Accepts
Rich Text, Text and URLs
COMMENT
Deezer music 🎵 downloader. Ripped from source directly. V: 3.0.0, Made by /u/74Y3M
COMMENT
Set this text to iCloud to save files on iCloud or Browser for saving on Browser app. You can also use "iCloud and Browser" to save on both of 'em 😉
TEXT
iCloud
VARIABLES
Set variable
SaveTo
to
Text
COMMENT
When sharing from deezer, input is messed up hence we split and combine them for getting the actual urls.
TEXT
Split
Shortcut Input
by
Spaces
TEXT
Combine
Split Text
with
New Lines
SCRIPTING
Otherwise
TEXT
Found deezer links on clipboard, would you like to continue with download?
Clipboard
SHARING
Get clipboard
SCRIPTING
If
Clipboard
contains
deezer.com
COMMENT
Let the user know if they wanna download the content from their clipboard link and if they don't go with search!
SCRIPTING
Choose from Menu
Yes
No
NOTHING
Nothing
End Menu
End If
End If
VARIABLES
Set variable
Input
to
If Result
COMMENT
Enter quality to download. 128/320/1411 128 - 128 kbps mp3 320 - 320 kbps mp3 1411 - 1411 kbps flac
NUMBER
320
VARIABLES
Set variable
Quality
to
Number
SCRIPTING
If
Input
contains
lnk.to
COMMENT
Artists nowadays usually share artistname.lnk.to/album-name like urls for redirecting to various streaming services. If we have this on input, parse it for getting deezer urls.
NETWORK
Get contents of
Input
Options Under Construction
DOCUMENTS
Make HTML from
Contents of URL
Make Full Document
TEXT
Match
https?.*?deezer.com/.*
in
HTML from Rich Text
Case Sensitive
VARIABLES
Set variable
Input
to
Matches
End If
SCRIPTING
If
Input
contains
deezer.com
COMMENT
If we have deezer link, just move along with downloads.
Otherwise
TEXT
Enter search input or type any of this: - "C" for top 10 tracks! - "A:album name" for albums - "P:playlist name" for playlists - ":search query" for tracks, playlists and albums PS: Word (A/P) before colon (:) are case sensitive. Without colon only tracks results will be fetched.
SCRIPTING
Ask
Text
Input Type
Text
Default Answer
Text
SCRIPTING
COMMENT
C is for top charts. You can replace this url with any of your specific charts.
URL
https://api.deezer.com/chart/0/tracks
Otherwise
SCRIPTING
URL
Encode
Ask for Input
SCRIPTING
If
URL Encoded Text
contains
:
SCRIPTING
If
URL Encoded Text
contains
A:
TEXT
Match
[^:]+$
in
URL Encoded Text
Case Sensitive
URL
https://api.deezer.com/search/album?q=
Text Matches
Otherwise
SCRIPTING
If
URL Encoded Text
contains
P:
TEXT
Match
[^:]+$
in
URL Encoded Text
Case Sensitive
URL
https://api.deezer.com/search/playlist?q=
Text Matches
Otherwise
TEXT
Match
[^:]+$
in
URL Encoded Text
Case Sensitive
TEXT
https://api.deezer.com/search/track?q=
Text Matches
https://api.deezer.com/search/playlist?q=
Text Matches
https://api.deezer.com/search/album?q=
Text Matches
End If
End If
Otherwise
COMMENT
If none of charts, album or playlist was selected go with default track search.
URL
https://api.deezer.com/search?q=
URL Encoded Text
End If
End If
NETWORK
Get contents of
If Result
Options Under Construction
COMMENT
If ":" was selected it gets multiple pages else one single page was fetched. Just repeat with each and add results to variable.
SCRIPTING
Repeat with each item in
Contents of URL
SCRIPTING
Get
Value
for
data
in
Repeat Item
SCRIPTING
Count
Items
in
Dictionary Value
COMMENT
Every search results have 25 results but we cut them to 10 for decreasing clutter. Specially when ":" was used it gets messy! Change the number if you want more result but don't go over 25.
SCRIPTING
If
Count
is greater than
10.0
NUMBER
10.0
VARIABLES
Set variable
ItemsData
to
Number
End If
SCRIPTING
Get
Items in Range
Start Index
to
ItemsData
from
Dictionary Value
COMMENT
From dictionary > data we get the actual tracks. Repeat with each and add to our list for downloading on next step.
SCRIPTING
Repeat with each item in
Item from List
SCRIPTING
Get
Value
for
artist
in
Repeat Item 2
URL
Repeat Item 2
SCRIPTING
Set name of
URL
to
Repeat Item 2
-
Dictionary Value
VARIABLES
Add
Renamed Item
to
SearchItems
End Repeat
End Repeat
COMMENT
Here we choose songs from our searched results. By default, we select only one song. You can enable multiple button here for selecting multiple songs.
SCRIPTING
Choose from
SearchItems
Prompt
Select a music to download
Select Multiple
VARIABLES
Set variable
Input
to
Selected Item
End If
DOCUMENTS
Replace
.+?(?=/album|/artist|/playlist|/profile|/track)
with
http://api.deezer.com
in
Input
Case Sensitive
Regular Expression
COMMENT
Replace all the deezer links with their api endpoint. You shouldn't download multiple albums/playlist at the same time, only tracks are good.
SCRIPTING
If
Updated Text
contains
/track/
TEXT
Split
Updated Text
by
New Lines
SCRIPTING
Count
Items
in
Split Text
COMMENT
Deezer have a api limit and that is 50 requests every 5 seconds. So we have to use their api slowly if we have more than 50 tracks. If we have less tracks we will fetch 'em all at once!
SCRIPTING
If
Count
is greater than
50.0
SCRIPTING
Repeat with each item in
Split Text
NETWORK
Get contents of
Repeat Item
Options Under Construction
End Repeat
Otherwise
NETWORK
Get contents of
Replace Text
Options Under Construction
End If
Otherwise
COMMENT
Here we are gonna fetch album/playlist or anything else with a single request. Please bear in mind, we cannot get more than 400 tracks from a playlist with a single request.
SCRIPTING
If
Updated Text
contains
deezer.com
NETWORK
Get contents of
Updated Text
Options Under Construction
SCRIPTING
Get
Value
for
title
in
Contents of URL

Showcuts

Magic Vars

Screenshot

Submitted by deethstaz a month ago

Visit iCloud (iOS)

Copy iCloud Link

Scan QR Code

0

120 more actions