Sobre o projeto

youtube-dl é um programa de linha de comando para baixar vídeos do YouTube.com e de muitas outras plataformas de vídeo. É escrito em Python, funciona em múltiplas plataformas (Linux, macOS, Windows) e requer Python 2.6/2.7 ou 3.2+. ## Instalação Disponível por múltiplos métodos: - Download direto do binário: `sudo curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl` - pip: `sudo -H pip install --upgrade youtube-dl` - macOS Homebrew: `brew install youtube-dl` - macOS MacPorts: `sudo port install youtube-dl` - Windows: Baixe o .exe e coloque no PATH (não no System32). ## Funcionalidades Principais - Baixa vídeos e legendas de mais de 1000 sites suportados usando extractors dedicados. - Suporte completo a playlists com seleção de intervalo (`--playlist-start`, `--playlist-end`, `--playlist-items`), ordem reversa e ordem aleatória. - Seleção e filtragem de formatos de vídeo por resolução, container, codec, tamanho, duração, visualizações e data. - Bypass de restrição geográfica via cabeçalhos X-Forwarded-For falsos, códigos de país personalizados ou exceções de bloco de IP. - Opções de rede: proxies HTTP/HTTPS/SOCKS, forçamento IPv4/IPv6, timeouts de soquete, user agents e referers customizados. - Suporte a downloaders externos (aria2c, curl, ffmpeg, wget, axel, etc.) para cenários avançados de download. - Retomada de arquivos parcialmente baixados; retry configurável para fragments inteiros e individuais. - Modelos de nomeação de arquivos de saída com múltiplas chaves de metadados (título, uploader, data de upload, resolução, formato, etc.). - Artefatos de saída opcionais: thumbnails (individual ou todas as versões), `.info.json` de metadados, arquivos `.description`, `.annotations.xml`. ## Padrões de Uso Comuns Download básico: `youtube-dl <URL>` Baixar itens da playlist do 5 ao 10: `youtube-dl --playlist-items 5-10 <playlist_URL>` Selecionar melhor vídeo apenas: `youtube-dl -f "bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]" <URL>` Definir modelo de saída: `youtube-dl -o "%(title)s [%(id)s].%(ext)s" <URL>` Baixar legendas: adicione `--write-subs --sub-langs en` ao comando. Testar sem baixar: `youtube-dl --skip-download <URL>` Exportar metadados JSON: `youtube-dl --dump-json <URL>` Limitar taxa: `youtube-dl --limit-rate 50K <URL>` ## Configuração Opções podem ser colocadas em arquivos de configuração: - Global: `/etc/youtube-dl.conf` - Usuário: `~/.config/youtube-dl/config` (Linux/macOS) ou `%APPDATA%/youtube-dl/config.txt` (Windows) Use `--config-location` para especificar um caminho personalizado, ou `--ignore-config` para pular qualquer arquivo de configuração. ## Embedding youtube-dl pode ser usado como biblioteca Python, incorporando lógica de extração e download em scripts e aplicações. ## Licença Lançado em domínio público — livre para modificar, redistribuir e usar de qualquer maneira.