Uma interface web simples para executar o comando yt-dlp com parâmetros personalizados.
- Interface web intuitiva para executar o yt-dlp
- Campos para URL do vídeo, URL referer e título opcional
- Validação de URLs
- Feedback visual do status do download
- Exibição da saída do comando yt-dlp
- Downloads salvos em diretório organizado
- Tratamento de erros e timeouts
- Fila de Downloads: Adicione múltiplos vídeos para download sequencial
- Download Direto: Baixe um vídeo imediatamente (comportamento original)
- Monitoramento em Tempo Real: Acompanhe o status da fila e downloads em andamento
- Gerenciamento da Fila: Remova itens específicos ou limpe toda a fila
- Histórico: Visualize downloads concluídos e com falha
- Processamento Automático: A fila processa automaticamente os downloads em sequência
- Python 3.7+
- yt-dlp instalado globalmente:
ou
pip3 install yt-dlp
brew install yt-dlp
-
Clone ou baixe este repositório
-
Navegue até o diretório do projeto:
cd internal-download-yt-dlp -
Instale as dependências Python:
pip3 install -r requirements.txt
-
Inicie o servidor:
python3 app.py
-
Acesse a interface: Abra seu navegador e vá para:
http://localhost:8000
- Acesse
http://localhost:8000no seu navegador - Insira a URL do vídeo que deseja baixar
- Insira a URL referer (se necessário)
- Adicione um título opcional para identificar o download
- Clique em "Baixar Vídeo" para download imediato
- Aguarde o download ser concluído
- Os arquivos serão salvos no diretório
downloads/
-
Adicionar à Fila:
- Preencha os campos (URL do vídeo, referer, título)
- Clique em "Adicionar à Fila"
- O item será adicionado à fila de downloads
-
Monitorar Downloads:
- A seção "Status da Fila" mostra informações em tempo real
- Veja quantos itens estão na fila e quantos foram concluídos
- Acompanhe o download atual em andamento
-
Gerenciar Fila:
- Remover Item: Clique em "Remover" ao lado de qualquer item na fila
- Limpar Fila: Use o botão "Limpar Fila" para remover todos os itens pendentes
-
Histórico:
- Visualize downloads concluídos com sucesso
- Veja downloads que falharam para tentar novamente
- Processamento Automático: A fila processa downloads automaticamente, um por vez
- Atualizações em Tempo Real: A interface atualiza automaticamente a cada 2 segundos
- Títulos Personalizados: Adicione títulos para identificar facilmente seus downloads
internal-download-yt-dlp/
├── app.py # Servidor Flask principal
├── index.html # Interface web
├── style.css # Estilos da interface
├── script.js # JavaScript da interface
├── requirements.txt # Dependências Python
├── README.md # Este arquivo
└── downloads/ # Pasta onde os vídeos são salvos (criada automaticamente)
A aplicação executa o seguinte comando yt-dlp:
yt-dlp -f "bv*+ba/b" \
--referer "url_link_referer" \
--merge-output-format mp4 \
"url_link_video"- Validação de URLs: Verifica se as URLs fornecidas são válidas
- Timeout: Limite de 5 minutos por download
- Feedback visual: Status em tempo real do processo
- Logs detalhados: Saída completa do yt-dlp
- Organização: Downloads salvos na pasta
downloads/
- Certifique-se de que o yt-dlp está instalado:
yt-dlp --version
- Se não estiver instalado:
pip3 install yt-dlp
- Certifique-se de que o diretório tem permissões de escrita
- Execute com sudo se necessário (não recomendado)
- Alguns vídeos podem demorar mais de 5 minutos
- Você pode ajustar o timeout no arquivo
app.py(linha comtimeout=300)
- A aplicação valida URLs antes de executar comandos
- Não executa comandos arbitrários do usuário
- Timeout para evitar processos infinitos
- Logs detalhados para debugging
Este projeto é de uso livre para fins educacionais e pessoais.