YoutubeDL-Material é uma interface de Material Design para youtube-dl. É codificado usando Angular 15 para o frontend e Node.js no backend.
Agora com suporte Docker!
Confira os pré-requisitos e vá para a seção de instalação. Fácil como uma torta!
Aqui está uma imagem de como ficará quando terminar:
Modo escuro:
NOTA: Se desejar usar o Docker, você pode pular para a seção Docker para obter um guia de configuração.
Dependências necessárias:
Dependências opcionais:
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
Se você estiver usando o Docker, vá para a seção Docker. Caso contrário, continue:
Primeiro, baixe a versão mais recente!
Arraste o diretório youtubedl-material
para um diretório de fácil acesso. Navegue até a pasta appdata
e edite o arquivo default.json
.
NOTA: Se você pretende usar um proxy reverso, esta próxima etapa não é necessária
Port forward a porta listada em default.json
, cujo padrão é 17442
.
Assim que a configuração estiver concluída, execute npm install
para instalar todas as dependências de backend. Quando terminar, digite npm start
. Isso executará o servidor backend, que também atende o frontend. No seu navegador, navegue até o servidor (url com a porta especificada). Tente colocar um link do YouTube para ver se funciona. Se isso acontecer, viola! O material YoutubeDL já está instalado e funcionando.
Se você tiver problemas, saiba que geralmente isso é causado por um problema de configuração. A primeira coisa que você deve fazer é verificar o console. Para chegar lá, clique com o botão direito em qualquer lugar da página e clique em “Inspecionar elemento”. Em seguida, no menu que aparece, clique em console. Veja o erro aí e tente investigar.
Se você deseja instalar o YoutubeDL-Material, vá para a seção Instalação. Se você deseja construí-lo sozinho e/ou desenvolver o repositório, esta seção é para você.
Para implantar, basta clonar o repositório e acessar o diretório youtubedl-material
. Digite npm install
e todas as dependências serão instaladas. Em seguida, digite cd backend
e digite novamente npm install
para instalar as dependências do backend.
Depois de fazer isso, você estará quase pronto e funcionando. Tudo que você precisa fazer é editar a configuração em youtubedl-material/appdata
, voltar para o diretório youtubedl-material
e digitar npm run build
. Isso criará o aplicativo e colocará os arquivos de saída na pasta youtubedl-material/backend/public
.
Por último, digite npm -g install pm2
para instalar o pm2 globalmente.
O front-end agora está completo. O back-end é muito mais fácil. Basta entrar na pasta backend
e digitar npm start
.
Finalmente, se quiser que sua instância esteja disponível fora da sua rede, você pode configurar um proxy reverso.
Alternativamente, você pode encaminhar a porta especificada na configuração (o padrão é 17442
) e apontá-la para o endereço IP do servidor. Certifique-se de que a porta também seja permitida pelo firewall do servidor.
Se você estiver em um Synology NAS, unRAID, Raspberry Pi 4 ou qualquer outro caso especial possível, você pode verificar se há problemas conhecidos ou instruções no rastreador de problemas e no Wiki!
Se você deseja configurar o YoutubeDL-Material com Docker, esta seção é para você. E você está com sorte! A configuração do Docker é bastante simples.
curl -L https://github.com/Tzahi12345/YoutubeDL-Material/releases/latest/download/docker-compose.yml -o docker-compose.yml
para baixar o Docker Compose mais recente ou vá para a página de lançamentos para pegue a versão que você deseja.docker-compose pull
. Isso fará o download da imagem oficial do Docker do YoutubeDL-Material.docker-compose up
para iniciá-lo. Se for bem-sucedido, deverá aparecer "HTTP(S): Iniciado na porta 17443" ou algo semelhante. Isso informa a porta interna do contêiner do aplicativo. Verifique seu arquivo docker-compose.yml
para a porta externa . Se você baixou o arquivo conforme descrito acima, o padrão é 8998 . Por padrão, o contêiner Docker é executado como não-root com UID=1000 e GID=1000. Para definir isso como seu próprio UID/GID, basta atualizar a seção environment
em seu docker-compose.yml
assim:
environment :
UID : YOUR_UID
GID : YOUR_GID
Para um dimensionamento muito melhor com grandes conjuntos de dados, execute sua instância YoutubeDL-Material com back-end MongoDB em vez do padrão baseado em arquivo json. Isso corrigirá muitos problemas de desempenho (especialmente com conjuntos de dados de dezenas de milhares de vídeos/áudios)!
Tutorial.
Documentos da API
Para começar, vá ao menu de configurações e habilite a API pública na guia Extra . Você pode gerar uma chave de API se alguma estiver faltando.
Depois de ativar a API e obter a chave, você pode começar a enviar solicitações adicionando o parâmetro de consulta apiKey=API_KEY
. Substitua API_KEY
pela sua chave de API real e você estará pronto para prosseguir! Quase todo o back-end deve estar à sua disposição. Veja os endpoints disponíveis no link acima.
Se você estiver usando iOS, experimente o YoutubeDL-Material de forma mais conveniente com um atalho. Com este atalho, você pode facilmente começar a baixar vídeos do YouTube com apenas dois toques! (Ou talvez três?)
Você pode baixar o atalho aqui.
Se você estiver interessado em contribuir, primeiro: incrível! Em segundo lugar, consulte as diretrizes/informações de configuração localizadas na página wiki de contribuição. É uma maneira útil de começar a programar.
Solicitações pull são sempre apreciadas! Se você está um pouco enferrujado com codificação, não há problema: sempre podemos ajudá-lo a aprender. E se isso for muito assustador, tudo bem também! Você pode criar problemas para recursos que gostaria de ver ou bugs que encontrar, tudo isso ajuda o projeto a crescer.
Se você estiver interessado em traduzir o aplicativo para um novo idioma, confira a página wiki do Tradutor.
Tradutores oficiais:
Veja também a lista de colaboradores que participaram deste projeto.
Este projeto está licenciado sob a licença MIT - consulte o arquivo LICENSE.md para obter detalhes
Este projeto não é de forma alguma afiliado ao Google LLC, Alphabet Inc. ou YouTube (ou suas subsidiárias) nem é endossado por eles.