Descargar videos de Frontend Masters

May 19, 2018 (6y ago)

Para este tutorial se requiere que tengas una cuenta en Frontend Masters. Puedes tener una cuenta free (para los cursos gratuitos) o suscribirte por 39USD al mes (para obtener acceso a todos los cursos).

Existe un repo en Gitlab llamado OS_FrontendMaster-dl que sirve para descargar los videos. En el mismo repositorio se describe cómo usar el paquete, pero a mi no me ha funcionado, por eso voy a mostrarte la forma en que sí me funcionó.

Requerimientos

Instalar ChromeDriver

La última versión de Chrome webdriver se puede encontrar en el siguiente enlace y la instrucción de instalación también se puede encontrar en la misma página.

https://sites.google.com/a/chromium.org/chromedriver/downloads

Para macOS puedes instalarlo de la siguiente manera sin necesidad de cambiar el PATH manualmente:

brew tap caskroom/cask
brew cask install chromedriver

Instalar dependencias de Python

Ingresa a la carpeta del repositorio

cd OS_FrontendMaster-dl

y ejecuta:

pip install -r requirements.txt --user

El flag --user es importante, a mi no me funcionó sin eso.

Nota: Si no tienes pip instálalo usando esta guía para macOS https://lavaldi.com/instalar-pip-mac-os-python/ o aquí https://pip.pypa.io/en/stable/installing/

Si sale un error sobre los paquetes nose y tornado solo basta con instalarlos así

sudo easy_install nose
sudo easy_install tornado

Uso

Luego solo tienes que ejecutar la siguiente línea:

python frontendmasters-dl.py --id YOUR-USERNAME --password YOUR-PASSWORD --course COURSE-ID

Nota: A mi no me funcionó la descarga usando los flags --mute-audio --high-resolution por eso no los uso en el comando de arriba

También puedes usarlo así

python frontendmasters-dl.py

E ir llenando los datos que te pida

La ruta de descarga predeterminada es ./Download dentro del directorio del repositorio.

Así puedes ver tus cursos cuando quieras, incluso si se te venció la suscripción o finalizó la fecha para los cursos gratuitos temporales; además, sin tener internet 😉