Accepts
Safari Web Pages and URLs
COMMENT
Автор: @atnbueno
Перевод от @devilmashine, @Adram753
Еще больше команд:
iOSShortcut.com
https://t.me/iosshortcut
Twitter/VK: @iOSshortcut
COMMENT
Качество выставленное по-умолчанию 320kbps MP3, но его можно настроить
- доступные битрейты 8, 16, 24, 32, 40, 48, 64, 80, 96, 112, 128, 160, 192, 224, 256, и 320
NUMBER
320

Number
VARIABLES
Set variable
Bitrate
to
Número
COMMENT
Получаем URL плейлиста
- если Команда не получила ссылку, она запросит ее от пользователя, и проверит буфер обмена.
WEB
Get URLs from
Shortcut Input

URLs
SCRIPTING
If
Direcciones URL
does not have any value
WEB
Get URLs from
Clipboard

URLs
SCRIPTING
Get
First Item
from
Direcciones URL

Item from List
SCRIPTING
Ask
Ссылка на плейлист Spotify?
Default Answer
[{'class': 'magic', 'value': 'Ítem de la lista', 'glyph': '', 'UUID': 'C0FE6FA7-F5A6-4E85-9309-740A18BD46CD'}]

Provided Input
SCRIPTING
Otherwise
SCRIPTING
Get
First Item
from
Direcciones URL

Item from List
URL
Ítem de la lista

URL
SCRIPTING
End If

If Result
VARIABLES
Set variable
Spotify Playlist URL
to
Resultado de la acción Si
COMMENT
Получение названия плейлиста
NETWORK
Get contents of
Spotify Playlist URL
Options Under Construction

Contents of URL
SCRIPTING
Set name of
Contenido de URL
to
html.txt

Renamed Item
TEXT
Match
(?<="twitter:title" content=")[^"]+
in
Ítem renombrado

Matches
DOCUMENTS
Replace
\s?:\s?
with
-
in
Coincidencias

Updated Text
VARIABLES
Set variable
Spotify Playlist Title
to
Texto actualizado
COMMENT
Получение списка треков
URL
https://www.spotifydl.xyz/gpl?pid=
Spotify Playlist URL

URL
NETWORK
Get contents of
URL
Options Under Construction

Contents of URL
COMMENT
Продолжаем только если это плейлист
SCRIPTING
If
Contenido de URL
is not
{"failed":"no such playlist"}
COMMENT
Используем действие Toolbox Pro "Quick Menu" для выбора треков
- требуется бесплатная версия
- да, можно сделать и без сторонних приложений.
DOCUMENTS
Replace
’
with
'
in
Contenido de URL

Updated Text
SCRIPTING
Repeat with each item in
Texto actualizado

Repeat Results
SCRIPTING
Get dictionary from
Repeat Item

Dictionary
TEXT
title:
artist
sub:
name
field1:
Repeat Index

Text
SCRIPTING
End Repeat

Repeat Results
TEXT
Combine
Resultado de la repetición
with
New Lines

Combined Text
MISSING
Under Construction
COMMENT
Даем выбор треков для загрузки
- выбраны все, по-умолчанию
SCRIPTING
Choose from
Tracks Playlist
Prompt
[{'value': 'Select tracks to download from the "', 'class': 'text'}, {'class': 'magic', 'value': 'Spotify Playlist Title', 'glyph': 'assets/cat/Variable.svg', 'UUID': ''}, {'value': '" playlist', 'class': 'text'}]Select All Initially
Ask Each Time

Chosen Item
SCRIPTING
Count
Items
in
Selected Tracks

Count
SCRIPTING
If
Contar
is greater than
0
SCRIPTING
Ask
Укажите название папки для сохранения
Contar
треков?
Default Answer
[{'value': 'spotifydl.xyz/', 'class': 'text'}, {'class': 'magic', 'value': 'Spotify Playlist Title', 'glyph': 'assets/cat/Variable.svg', 'UUID': ''}, {'value': '/', 'class': 'text'}]

Provided Input
VARIABLES
Set variable
Download Path
to
Entrada proporcionada
DOCUMENTS
Create Folder
Path
[{'value': '/Shortcuts/', 'class': 'text'}, {'class': 'magic', 'value': 'Download Path', 'glyph': 'assets/cat/Variable.svg', 'UUID': ''}]
COMMENT
Некоторые треки могут не загрузиться, так что сосчитаем такие случаи
NUMBER
0

Number
VARIABLES
Set variable
Error Count
to
Número
COMMENT
Скачиваем выбранные треки
SCRIPTING
Repeat with each item in
Selected Tracks

Repeat Results
MISSING
Under Construction
URL
https://www.spotifydl.xyz/gdl?name=
Menu Item Detail
&artist=
Menu Item Detail

URL
NETWORK
Get contents of
URL
Options Under Construction

Contents of URL
DOCUMENTS
Get text from
Contenido de URL

Text
COMMENT
Используем битрейт, настроенный в команде
DOCUMENTS
Replace
/320/
with
/
Bitrate
/
in
Texto

Updated Text
WEB
Get URLs from
Texto actualizado

URLs
SCRIPTING
If
Direcciones URL
has any value
NETWORK
Get contents of
Direcciones URL
Options Under Construction

Contents of URL
SCRIPTING
Set name of
Contenido de URL
to
Menu Item Detail
.
Menu Item Detail
-
Menu Item Detail
.mp3

Renamed Item
DOCUMENTS
Save
Ítem renombrado
Destination Path
[{'value': '/Shortcuts/', 'class': 'text'}, {'class': 'magic', 'value': 'Download Path', 'glyph': 'assets/cat/Variable.svg', 'UUID': ''}]Overwrite If File Exists

Saved File
SCRIPTING
Otherwise
COMMENT
Проверка на ошибки при скачивании
MATHS
Error Count
+
1
Options Under Construction

Calculation Result
VARIABLES
Set variable
Error Count
to
Resultado del cálculo
NOTIFICATIONS
Show notification
Input
Options Under Construction
SCRIPTING
End If

If Result
NOTHING
Nothing
SCRIPTING
End Repeat

Repeat Results
COMMENT
Финальное сообщение о том, что было скачано
MATHS
Contar
-
Error Count
Options Under Construction

Calculation Result
SCRIPTING
If
Resultado del cálculo
is greater than
0
SCRIPTING
URL
shareddocuments:///var/mobile/Library/Mobile Documents/iCloud~is~workflow~my~workflows/Documents/
Download Path

URL
SAFARI
Open
URL
SCRIPTING
Otherwise
SCRIPTING
SCRIPTING
End If

If Result
SCRIPTING
Otherwise
SCRIPTING
SCRIPTING
End If

If Result
SCRIPTING
Otherwise
SCRIPTING
SCRIPTING
End If

If Result