CLI para descargar vídeo y audio (YouTube, Instagram, TikTok, X y más).
Python + yt-dlp + Rich, con intro animada y menú interactivo.
- Vídeo hasta 4K (con audio o solo imagen)
- Extracción a MP3 (320 / 192 / 128 kbps)
- Selección robusta de formatos (incluye Shorts verticales)
- Carpeta de descarga configurable
- Intro animada + menú neon
- Build Windows
.execon PyInstaller
- Python 3.8+ (solo si corres desde fuente)
- FFmpeg en el PATH o junto al ejecutable / script
- Windows: pon
ffmpeg.exe(y si puedesffprobe.exe) en la misma carpeta queEJTools.exe/ el repo, o instálalo en el PATH. - macOS / Linux:
brew install ffmpegosudo apt install ffmpeg
git clone https://github.com/JairoMS27/ej_tools.git
cd ej_tools
python -m venv venv
# Windows:
venv\Scripts\activate
pip install -r requirements.txt
python main.pypython main.py- Elige vídeo con audio, vídeo sin audio o solo audio
- Pega el enlace
- Elige calidad
- Listo
La config local se guarda en settings.json (ignorado por git; es por máquina).
Para abrir el programa escribiendo ejtools en cualquier terminal:
Crea una carpeta estable, por ejemplo:
C:\Users\<TU_USUARIO>\bin
Copia ahí:
EJTools.exe(del release o dedist\)ffmpeg.exe(recomendado, misma carpeta)
En esa misma carpeta, crea ejtools.cmd con:
@echo off
"%~dp0EJTools.exe" %*PowerShell:
$bin = "$env:USERPROFILE\bin"
New-Item -ItemType Directory -Force -Path $bin | Out-Null
# (copia EJTools.exe, ffmpeg.exe y ejtools.cmd a $bin)
$userPath = [Environment]::GetEnvironmentVariable("Path", "User")
if ($userPath -notlike "*$bin*") {
[Environment]::SetEnvironmentVariable("Path", "$userPath;$bin", "User")
}Cierra y abre la terminal. Prueba:
ejtoolsNota: los cambios de PATH no aplican a terminales ya abiertas.
pip install -r requirements.txt pyinstaller
pyinstaller EJTools.specSalida: dist/EJTools.exe
Copia ffmpeg.exe al lado del .exe antes de repartirlo o de meterlo en el PATH.
- Fork
- Branch (
git checkout -b feature/mi-cambio) - Commit + push
- Pull Request
Repo: JairoMS27/ej_tools