весь плейліст одним дотиком скачати

Збираю пісні з ютубу - слухати в автомобілі, навіть якщо немає з’єднання з інтернетом.

Набираю композиції в playlist, далі сідаю - запихую у всякі ютуб ту мп3 конвертори. Лінк за лінком, кнопка за кнопкою.

Натрапив на yt-dlp - все те саме, тільки без кнопок, реклами і поодиночного опрацювання. Утіліта

  • є для Unix і Windows
  • дозволяє зайти в ютуб з кукамі Chrome
  • встановити якість mp3
  • зберігти весь плейліст за один запуск
yt-dlp -x --audio-format mp3 --audio-quality 192K --paths ~/Downloads/is27 https://www.youtube.com/playlist?list=PLlLDTlMx2PvqoEtXWCUVYAn82A41ehQF6

Трохи заморочок з встановленням - і yt-dlp таки працює і скачує все, що в плейлисті. Місяцями робив манкі роботу - і одна утіліта, що вирішує те саме питання без участі людини. Яким же не лінивим я був… Нічого, зараз буду лінивішим.

Потім додатково набрався наглості - попросив у ШІ по назвам виконавців і композиціям заповнити жанри, щоб скласти значення жанрів в mp3 і зробити shuffle більш різноманітним.

yt-dlp ще вміє заповнювати Title Artist автоматично - треба буде дослідити трохи, чи гарно воно буде заповноюватись. Бо зараз там таке чудернацьке в ютубі малюється в заголовках композицій, що ужоси.

UPD

для того, щоб позбутись попереджень про неможливість використовувати js runtime - треба трохи поприсідати. Встановити і дозволити використання yt-dlp-ejs.

Конфіг файл створив ~/.yt-dlp/config з ось таким вмістом:

--remote-components ejs:github

--js-runtimes deno:/usr/local/bin/deno

-o "%(title)s.%(ext)s"

--cookies-from-browser chrome

--remote-components ejs:github - тоді yt-dlp буде автоматично скачувати з GitHub EJS скрипти

deno вже було встановлено в /usr/local/bin/deno - треба тільки показати шлях до нього.

-o "%(title)s.%(ext)s" - для того щоб позбутись унікального id в імені файлу, додається до імені файлу в квадратних дужках.

UPD інсталяція

для Ubuntu в репозіторіях apt лежить трохи давня версія, що перестала працювати неочікувано, генерувались помилки 403.

То ж зробив як радять в інтернетах

curl -L https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp -o ~/Downloads
mkdir ~/.local/bin
mv ~/Downloads/yt-dlp ~/.local/bin
chmod a+rx ~/.local/bin/yt-dlp  # Make executable
yt-dlp --update-to nightly

Напряму в ~/.local/bin відмовився качати curl, згенерував помилку доступу.

Tags:

Categories:

Updated: