Descarga automatizada de los cursos de Codigo Facilito
con un script creado en Python
utilizando yt-dlp
como un subproceso.
El script utiliza Playwright & Firefox & ffmpeg, así que asegúrate de tener instalados previamente en tu ordenador.
En Ubuntu:
# Actualiza los repositorios
sudo apt update -y
# Instalar firefox, ffmpeg, git y pipx
sudo apt install firefox ffmpeg git pipx -y
# Agregar pipx al PATH
pipx ensurepath
En Archlinux:
# Actualiza los repositorios
sudo pacman -Syu
# Instalar firefox, ffmpeg, git y pipx
sudo pacman -S firefox ffmpeg git python-pipx
# Agregar pipx al PATH
pipx ensurepath
[!IMPORTANT] Los pasos que se muestran, son a través del gestor de paquetes para Windows (Scoop)
->
(Ver Tutorial). También puedes instalar las dependencias de la forma tradicional, descargando uno a uno los instaladores. Pero la forma mas fácil y recomendada es usar el gestor de paquetes.
# Agrega repositorios
scoop bucket add main
scoop bucket add extras
# Instalar Python
scoop install main/python
# Instalar Firefox
scoop install extras/firefox
# Instalar ffmpeg
scoop install main/ffmpeg
# Instalar git
scoop install main/git
# Instalar pipx
scoop install main/pipx
# Agrega pipx al PATH
pipx ensurepath
# Actualiza los repositorios
brew update
# Instalar firefox, ffmpeg, git y pipx
brew install firefox ffmpeg git pipx
# Agregar pipx al PATH
pipx ensurepath
# Clone el repositorio
git clone https://github.com/ivansaul/codigo_facilito_downloader.git
# Ir al directorio
cd codigo_facilito_downloader
# Instala poetry
pipx install poetry
# Activa el entorno virtual
poetry shell
# Instala las dependencias
poetry install
# Instalar playwright dependencies
playwright install-deps
playwright install firefox
$ python coco.py login
What's your email?: [email protected]
Confirm your email?: [email protected]
What's your password?: facilito123
Confirm your password?: facilito123
$ python coco.py download
Url: https://codigofacilito.com/cursos/flutter-profesional
Quality (best, 1080, 720, 480, 360, worst) [best]: best
⠹ Processing...
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Curso profesional de Flutter ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
└──────────────────────────────┘
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┓
┃ Sections ┃ Videos ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━┩
│ 1. Introducción │ 9 │
│ 2. Widgets Básicos │ 11 │
│ 3. Navegación │ 5 │
│ 4. Multi-child │ 4 │
│ 5. Listview, gridview, ítems y utilidades │ 10 │
│ 6. Formulario │ 8 │
│ 7. Menús │ 4 │
│ Diseño │ 5 │
└───────────────────────────────────────────┴────────┘
Would you like to download? [y/N]: y
⠹ Downloading...
✓ Done!
$ python coco.py download
Url: https://codigofacilito.com/videos/icon
Quality (best, 1080, 720, 480, 360, worst) [best]: 480
⠹ Processing...
⠹ Downloading...
⠹ Icon ...
✓ Done!
[!IMPORTANT] Por defecto, el script descarga los videos con la mejor calidad disponible(best), pero puedes elegir entre [worst, 360, 480, 720, 1080 o best].
[!IMPORTANT] Revisa los logs(
cli.log
) de la consola para ver un registro de los videos que por algún motivo no se pudieron descargar.
[!TIP] Si por algún motivo se cancela la descarga. Puedes retomarlo con el comando
python coco.py download
[!IMPORTANT] Para que el script funcione correctamente, recuerda siempre tener una copia exacta y actualizada del repositorio remoto..
git checkout master
git fetch origin
git reset --hard origin/master
Este proyecto se realiza con fines exclusivamente educativos y de aprendizaje. El código proporcionado se ofrece "tal cual" sin ninguna garantía de su funcionamiento o idoneidad para ningún propósito específico.
No me hago responsable por cualquier mal uso, daño o consecuencia que pueda surgir del uso de este proyecto. Es responsabilidad del usuario utilizarlo de manera adecuada y dentro de los límites legales y éticos.
Aquí tienes una lista de algunos de mis otros repositorios. ¡Échales un vistazo!