Accepts
URLs, Text and Rich Text
COMMENT
Deezer music π΅ downloader.
V: 3.0.0, Π°Π²ΡΠΎΡ /u/74Y3M
ΠΠ΅ΡΠ΅Π²ΠΎΠ΄ ΠΈ Π°Π΄Π°ΠΏΡΠ°ΡΠΈΡ ΠΏΠΎΠ΄ iOS15 @devilmashine
ΠΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄:
iOSShortcut.com
https://tele.click/iosshortcut
Twitter/VK: @iOSshortcut
MISSING
folder Under Construction
COMMENT
ΠΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π²Π΅ΡΠ½ΠΎΠΉ ΡΡΡΠ»ΠΊΠΈ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈΠ· ΠΌΠ΅Π½Ρ ΠΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ.
TEXT
Shortcut Input

Text
WEB
Get URLs from
Π’Π΅ΠΊΡΡ

URLs
WEB
Expand
URL-Π°Π΄ΡΠ΅ΡΠ°

Expanded URL
SCRIPTING
If
Π Π°Π·Π²Π΅ΡΠ½ΡΡΡΠΉ URL
has any value
SCRIPTING
Otherwise
TEXT
ΠΠ°ΠΉΠ΄Π΅Π½Π° ΡΡΡΠ»ΠΊΠ° Π² Π±ΡΡΠ΅ΡΠ΅ ΠΎΠ±ΠΌΠ΅Π½Π°, ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΡΡΠ΅ΠΊ?
Π Π°Π·Π²Π΅ΡΠ½ΡΡΡΠΉ URL

Text
SHARING
Get clipboard

Clipboard
SCRIPTING
If
Π Π°Π·Π²Π΅ΡΠ½ΡΡΡΠΉ URL
contains
deezer.com
COMMENT
ΠΡΠ±ΠΎΡ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΡ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅ ΠΈΠ· Π±ΡΡΠ΅ΡΠ° ΠΎΠ±ΠΌΠ΅Π½Π°, Π»ΠΈΠ±ΠΎ ΠΏΠΎΠΈΡΠΊ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅!
SCRIPTING
Choose from Menu

Menu Result
SCRIPTING
ΠΠ°

Menu Result
SCRIPTING
ΠΠ΅Ρ

Menu Result
NOTHING
Nothing
SCRIPTING
End Menu

Menu Result
SCRIPTING
End If

If Result
SCRIPTING
End If

If Result
VARIABLES
Set variable
Input
to
If Result
COMMENT
Π£ΠΊΠ°ΠΆΠΈΡΠ΅ ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ Π΄Π»Ρ Π·Π°Π³ΡΡΠ·ΠΊΠΈ.
128/320/1411
128 - 128 kbps mp3
320 - 320 kbps mp3
1411 - 1411 kbps flac
NUMBER
1411

Number
VARIABLES
Set variable
Quality
to
Number
SCRIPTING
If
Input
contains
lnk.to
COMMENT
ΠΡΡΠΈΡΡΡ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΠ΅ΠΉΡΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ artistname.lnk.to/album-name Π΄Π»Ρ ΡΠ΅Π΄ΠΈΡΠ΅ΠΊΡΠ° Π½Π° ΡΡΡΠΈΠΌΠΈΠ½Π³ΠΎΠ²ΡΠ΅ ΡΠ΅ΡΠ²ΠΈΡΡ. ΠΡΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π΅Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ, ΡΠΎ ΠΎΠ½Π° ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΡΡΡΠ»ΠΊΠΈ Π½Π° Deezer.
NETWORK
Get contents of
Input
Options Under Construction

Contents of URL
DOCUMENTS
Make HTML from
Contents of URL

HTML from Rich Text
TEXT
Match
https?.*?deezer.com/.*
in
HTML from Rich Text

Matches
VARIABLES
Set variable
Input
to
Matches
SCRIPTING
End If

If Result
SCRIPTING
If
Input
contains
deezer.com
COMMENT
ΠΡΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ ΡΡΡΠ»ΠΊΠΈ Π½Π° Deezer, ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ΠΈΠΌ ΡΡΠ°Π·Ρ ΠΊ Π·Π°Π³ΡΡΠ·ΠΊΠ΅.
SCRIPTING
Otherwise
TEXT
Π£ΠΊΠ°ΠΆΠΈΡΠ΅ ΠΏΠΎΠΈΡΠΊΠΎΠ²ΡΠΉ Π·Π°ΠΏΡΠΎΡ Π²ΠΈΠ΄Π°:
- "C" Π΄Π»Ρ ΡΠΎΠΏ 10 ΡΡΠ΅ΠΊΠΎΠ²!
- "A:album name" Π΄Π»Ρ Π°Π»ΡΠ±ΠΎΠΌΠΎΠ²
- "P:playlist name" Π΄Π»Ρ ΠΏΠ»Π΅ΠΉΠ»ΠΈΡΡΠΎΠ²
- ":search query" Π΄Π»Ρ ΡΡΠ΅ΠΊΠΎΠ², Π°Π»ΡΠ±ΠΎΠΌΠΎΠ² ΠΈ ΠΏΠ»Π΅ΠΉΠ»ΠΈΡΡΠΎΠ²
PS: ΠΡΠΊΠ²Π° (A/P) ΠΏΠ΅ΡΠ΅Π΄ Π΄Π²ΠΎΠ΅ΡΠΎΡΠΈΠ΅ΠΌ (:) ΡΡΠ²ΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΠΊ ΡΠ΅Π³ΠΈΡΡΡΡ. ΠΠ΅Π· Π΄Π²ΠΎΠ΅ΡΠΎΡΠΈΡ ΠΏΠΎΠΈΡΠΊ Π²ΡΠ΄Π°ΡΡ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠ΅ΠΊΠΈ.

Text
SCRIPTING

Provided Input
SCRIPTING
If
Ask for Input
is
C
COMMENT
C Π΄Π»Ρ ΡΠΎΠΏ ΡΠ°ΡΡΠΎΠ². Π‘ΡΡΠ»ΠΊΠ° Π½ΠΈΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π·Π°ΠΌΠ΅Π½Π΅Π½Π° Π½Π° Π²Π°Ρ Π»ΡΠ±ΠΈΠΌΡΠΉ ΡΠΎΠΏ ΡΠ°ΡΡ.
URL
https://api.deezer.com/chart/0/tracks

URL
SCRIPTING
Otherwise
SCRIPTING
URL
Encode
Ask for Input

URL Encoded Text
SCRIPTING
If
URL Encoded Text
contains
:
SCRIPTING
If
URL Encoded Text
contains
A:
TEXT
Match
[^:]+$
in
URL Encoded Text

Matches
URL
https://api.deezer.com/search/album?q=
Text Matches

URL
SCRIPTING
Otherwise
SCRIPTING
If
URL Encoded Text
contains
P:
TEXT
Match
[^:]+$
in
URL Encoded Text

Matches
URL
https://api.deezer.com/search/playlist?q=
Text Matches

URL
SCRIPTING
Otherwise
TEXT
Match
[^:]+$
in
URL Encoded Text

Matches
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

Text
SCRIPTING
End If

If Result
SCRIPTING
End If

If Result
SCRIPTING
Otherwise
COMMENT
ΠΡΠ»ΠΈ Π½Π΅Ρ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠΉ ΠΏΠΎ ΡΠ°ΡΡΠ°ΠΌ, Π°Π»ΡΠ±ΠΎΠΌΠ°ΠΌ ΠΈ ΠΏΠ»Π΅ΠΉΠ»ΠΈΡΡΠ°ΠΌ - ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ΠΈΠΌ ΠΊ ΠΏΠΎΠΈΡΠΊΡ ΠΏΠΎ ΡΡΠ΅ΠΊΠ°ΠΌ.
URL
https://api.deezer.com/search?q=
URL Encoded Text

URL
SCRIPTING
End If

If Result
SCRIPTING
End If

If Result
NETWORK
Get contents of
If Result
Options Under Construction

Contents of URL
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

Repeat Results
SCRIPTING
Get
Value
for
data
in
Repeat Item

Dictionary Value
SCRIPTING
Count
Items
in
Dictionary Value

Count
COMMENT
ΠΠ°ΠΆΠ΄ΡΠΉ ΠΏΠΎΠΈΡΠΊ Π²ΡΠ΄Π°Π΅Ρ 25 ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠΉ, Π½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΎΠ±ΡΠ΅Π·Π°Π΅Ρ ΠΈΡ
Π΄ΠΎ 10 Π΄Π»Ρ Π±ΡΡΡΡΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠΎ ΡΠ²ΠΎΠ΅ΠΌΡ Π²ΠΊΡΡΡ, Π½ΠΎ Π½Π΅ ΠΏΡΠ΅Π²ΡΡΠ°ΠΉΡΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ - 25.
SCRIPTING
If
Count
is greater than
10.0
NUMBER
10

Number
VARIABLES
Set variable
ItemsData
to
Number
SCRIPTING
End If

If Result
SCRIPTING
Get
Items in Range
Start Index
to
ItemsData
from
Dictionary Value

Item from List
COMMENT
ΠΠ· ΡΠ»ΠΎΠ²Π°ΡΡ > data ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ Π°ΠΊΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΡΠ΅ΠΊΠΈ. ΠΠΎΠ²ΡΠΎΡΡΠ΅ΠΌ Ρ ΠΊΠ°ΠΆΠ΄ΡΠΌ ΠΈ ΡΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌ ΡΠΏΠΈΡΠΎΠΊ.
SCRIPTING
Repeat with each item in
Item from List

Repeat Results
SCRIPTING
Get
Value
for
artist
in
Repeat Item 2

Dictionary Value
URL
Repeat Item 2

URL
SCRIPTING
Set name of
URL
to
Repeat Item 2
-
Dictionary Value

Renamed Item
VARIABLES
Add
Renamed Item
to
SearchItems
SCRIPTING
End Repeat

Repeat Results
SCRIPTING
End Repeat

Repeat Results
COMMENT
Π‘ΠΏΠΈΡΠΎΠΊ Π²ΡΠ±ΠΎΡΠ° ΡΡΠ΅ΠΊΠ° Π΄Π»Ρ Π·Π°Π³ΡΡΠ·ΠΊΠΈ. ΠΠΎ-ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΡΠΎΠΈΡ ΠΎΠ΄ΠΈΠ½ΠΎΡΠ½ΡΠΉ Π²ΡΠ±ΠΎΡ, Π½ΠΎ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π½Π° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΉ.
SCRIPTING
Choose from
SearchItems
Prompt
Select a music to download

Chosen Item
VARIABLES
Set variable
Input
to
Selected Item
SCRIPTING
End If

If Result
DOCUMENTS
Replace
.+?(?=/album|/artist|/playlist|/profile|/track)
with
http://api.deezer.com
in
Input

Updated Text
COMMENT
ΠΠΎΡΠΎΠ²ΠΈΠΌ ΡΡΡΠ»ΠΊΠΈ ΠΊ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΡ. ΠΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½Π°Ρ Π·Π°Π³ΡΡΠ·ΠΊΠ° Π΄ΠΎΡΡΡΠΏΠ½Π° ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ΅ΠΊΠΎΠ², Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π·Π°Π³ΡΡΠ·ΠΊΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
Π°Π»ΡΠ±ΠΎΠΌΠΎΠ² ΠΈ ΠΏΠ»Π΅ΠΉΠ»ΠΈΡΡΠΎΠ².
SCRIPTING
If
Updated Text
contains
/track/
TEXT
Split
Updated Text
by
New Lines

Split Text
SCRIPTING
Count
Items
in
Split Text

Count
COMMENT
Deezer ΠΈΠΌΠ΅Π΅Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ api : 50 Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΊΠ°ΠΆΠ΄ΡΠ΅ 5 ΡΠ΅ΠΊΡΠ½Π΄. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π΅ΡΠ»ΠΈ Ρ Π½Π°Ρ Π±ΠΎΠ»Π΅Π΅ 50 ΡΡΠ΅ΠΊΠΎΠ², ΠΊΠΎΠΌΠ°Π½Π΄Π° Π±ΡΠ΄Π΅Ρ Π·Π°ΠΌΠ΅Π΄Π»ΡΡΡ ΡΠ²ΠΎΡ ΡΠ°Π±ΠΎΡΡ, Π΅ΡΠ»ΠΈ ΠΌΠ΅Π½Π΅Π΅ Π²ΡΠ΅ Π±ΡΠ΄Π΅Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½ΠΎ Π·Π° ΡΠ°Π·.
SCRIPTING
If
Count
is greater than
50.0
SCRIPTING
Repeat with each item in
Split Text

Repeat Results
NETWORK
Get contents of
Repeat Item
Options Under Construction

Contents of URL
SCRIPTING
End Repeat

Repeat Results
SCRIPTING
Otherwise
NETWORK
Get contents of
Replace Text
Options Under Construction

Contents of URL
SCRIPTING
End If

If Result
SCRIPTING
Otherwise
SCRIPTING
If
Updated Text
contains
deezer.com
NETWORK
Get contents of
Updated Text
Options Under Construction

Contents of URL
SCRIPTING
Get
Value
for
title
in
Contents of URL

Dictionary Value
DOCUMENTS
Replace
[/:|;",\\*']
with
_
in
Dictionary Value

Updated Text
COMMENT
Remove all illegal characters from title as it mess up later saving to file.