YoutubeDL-Material — это интерфейс Material Design для youtube-dl. Он написан с использованием Angular 15 для внешнего интерфейса и Node.js для внутреннего интерфейса.
Теперь с поддержкой Docker!
Ознакомьтесь с предварительными условиями и перейдите в раздел установки. Легко как пирог!
Вот изображение того, как это будет выглядеть, когда вы закончите:
Темный режим:
ПРИМЕЧАНИЕ. Если вы хотите использовать Docker, вы можете перейти к разделу Docker, чтобы ознакомиться с руководством по установке.
Необходимые зависимости:
Дополнительные зависимости:
atomicparsley
)curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt-get install nodejs youtube-dl ffmpeg unzip python npm
sudo yum install epel-release
sudo yum localinstall --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm
sudo yum install centos-release-scl-rh
sudo yum install rh-nodejs12
scl enable rh-nodejs12 bash
curl -fsSL https://rpm.nodesource.com/setup_16.x | sudo bash -
sudo yum install nodejs youtube-dl ffmpeg ffmpeg-devel
Если вы используете Docker, перейдите к разделу Docker. В противном случае продолжайте:
Сначала скачайте последнюю версию!
Перетащите каталог youtubedl-material
в легкодоступный каталог. Перейдите в папку appdata
и отредактируйте файл default.json
.
ПРИМЕЧАНИЕ. Если вы собираетесь использовать обратный прокси-сервер, следующий шаг не обязателен.
Перенаправить порт, указанный в default.json
, который по умолчанию равен 17442
.
После завершения настройки запустите npm install
чтобы установить все зависимости серверной части. Как только это будет завершено, введите npm start
. Это запустит внутренний сервер, который также обслуживает внешний интерфейс. В браузере перейдите к серверу (URL-адрес с указанным портом). Попробуйте вставить ссылку на YouTube, чтобы проверить, работает ли она. Если да, то альт! YoutubeDL-Material запущен и работает.
Если у вас возникли проблемы, знайте, что обычно они вызваны проблемой конфигурации. Первое, что вам нужно сделать, это проверить консоль. Чтобы попасть туда, щелкните правой кнопкой мыши в любом месте страницы и выберите «Проверить элемент». Затем в появившемся меню нажмите «Консоль». Посмотрите на ошибку там и попытайтесь разобраться.
Если вы хотите установить YoutubeDL-Material, перейдите в раздел «Установка». Если вы хотите собрать его самостоятельно и/или разработать репозиторий, то этот раздел для вас.
Для развертывания просто клонируйте репозиторий и перейдите в каталог youtubedl-material
. Введите npm install
, и все зависимости будут установлены. Затем введите cd backend
и еще раз введите npm install
чтобы установить зависимости для серверной части.
Как только вы это сделаете, вы почти готовы к работе. Все, что вам нужно сделать, это отредактировать конфигурацию в youtubedl-material/appdata
, вернуться в каталог youtubedl-material
и ввести npm run build
. Приложение будет создано, а выходные файлы будут помещены в папку youtubedl-material/backend/public
.
Наконец, введите npm -g install pm2
, чтобы установить pm2 глобально.
Интерфейс теперь готов. Бэкэнд намного проще. Просто зайдите во backend
папку и введите npm start
.
Наконец, если вы хотите, чтобы ваш экземпляр был доступен извне вашей сети, вы можете настроить обратный прокси-сервер.
Альтернативно вы можете перенаправить порт, указанный в конфигурации (по умолчанию 17442
), и указать его на IP-адрес сервера. Убедитесь, что порт также разрешен через брандмауэр сервера.
Если вы используете Synology NAS, unRAID, Raspberry Pi 4 или любой другой возможный особый случай, вы можете проверить наличие известных проблем или инструкций как в системе отслеживания проблем, так и в Wiki!
Если вы хотите настроить YoutubeDL-Material с помощью Docker, этот раздел для вас. И вам повезло! Настройка Docker довольно проста.
curl -L https://github.com/Tzahi12345/YoutubeDL-Material/releases/latest/download/docker-compose.yml -o docker-compose.yml
, чтобы загрузить последнюю версию Docker Compose, или перейдите на страницу выпусков, чтобы возьмите нужную вам версию.docker-compose pull
. Будет загружен официальный образ докера YoutubeDL-Material.docker-compose up
чтобы запустить его. В случае успеха должно появиться сообщение «HTTP(S): запущено на порту 17443» или что-то подобное. Это сообщит вам внутренний порт приложения. Проверьте файл docker-compose.yml
на наличие внешнего порта. Если вы загрузили файл, как описано выше, его номер по умолчанию — 8998 . По умолчанию контейнер Docker запускается от имени пользователя без полномочий root с UID=1000 и GID=1000. Чтобы установить свой собственный UID/GID, просто обновите раздел environment
в вашем docker-compose.yml
следующим образом:
environment :
UID : YOUR_UID
GID : YOUR_GID
Для лучшего масштабирования с большими наборами данных запустите экземпляр YoutubeDL-Material с серверной частью MongoDB, а не с файлом по умолчанию на основе json. Это исправит множество проблем с производительностью (особенно с наборами данных из десятков тысяч видео/аудио)!
Учебник.
Документация по API
Для начала перейдите в меню настроек и включите общедоступный API на вкладке «Дополнительно» . Вы можете сгенерировать ключ API, если он отсутствует.
После включения API и получения ключа вы можете начать отправку запросов, добавив параметр запроса apiKey=API_KEY
. Замените API_KEY
своим фактическим ключом API, и все готово! Почти весь бэкэнд должен быть в вашем распоряжении. Просмотрите доступные конечные точки по ссылке выше.
Если вы используете iOS, попробуйте YoutubeDL-Material более удобно с помощью ярлыка. С помощью этого ярлыка вы можете легко начать загрузку видео с YouTube всего двумя нажатиями! (А может три?)
Скачать ярлык можно здесь.
Если вы заинтересованы в том, чтобы внести свой вклад, во-первых: здорово! Во-вторых, обратитесь к рекомендациям/информации по настройке, расположенной на вики-странице «Содействие». Это полезный способ поставить вас на ноги и начать писать код.
Запросы на вытягивание всегда приветствуются! Если вы немного подзабыли о программировании, это не проблема: мы всегда можем помочь вам научиться. И если это слишком страшно, это тоже нормально! Вы можете создавать проблемы для функций, которые вы хотели бы видеть, или ошибок, с которыми вы сталкиваетесь, — все это помогает этому проекту развиваться.
Если вы заинтересованы в переводе приложения на новый язык, посетите вики-страницу Translate.
Официальные переводчики:
См. также список участников, принявших участие в этом проекте.
Этот проект лицензируется по лицензии MIT — подробности см. в файле LICENSE.md.
Этот проект никоим образом не связан с Google LLC, Alphabet Inc. или YouTube (или их дочерними компаниями) и не одобрен ими.