Coder Social home page Coder Social logo

oscardogar / platzi-download Goto Github PK

View Code? Open in Web Editor NEW
55.0 5.0 3.0 180 KB

Permite descargar videos de platzi muchos más rápido. Permite descargar tanto los videos, las lecturas, los subtítulos (si están disponibles) y los recursos de cada una de las clases.

Python 100.00%
descargar download downloader platzi cursos descargar-videos-platzi platzi-download platzi-downloader

platzi-download's Introduction

Platzi-Download

Permite descargar videos de Platzi muchos más rápido. Permite descargar tanto los videos, las lecturas, los subtítulos (si están disponibles) y los recursos de cada una de las clases.

📄Requirements

  • Es NECESARIO tener una cuenta de suscripción a Platzi.
  • Tener instalado FFmpeg el cual puedes descargar en https://ffmpeg.org/
  • Tener Google Chrome instalado.
  • Descargar el webdriver de selenium con la misma versión de chrome instalada (el cual puedes descargar aquí) y colocarlo en la ruta inicial del disco C, es decir, "C:/chromedriver.exe"
  • Instalar requirements.txt
  • Cambiar en el archivo .env que se creó al correr el programa por primera vez las variables de entorno que se necesitan:
    1. EMAIL = "[email protected]"
    2. PWD = "tucontraseña"
    3. WORDS_TO_REMOVE(opcional) = word1, word2, word3 (son algunas palabras que se eliminan al momento de descargar una lectura).

📥Installation

Si lo deseas puedes simplemente descargar el ejecutable del último release el cual puedes encontrar aquí.

📋Steps

  1. Antes que todo lo primero que se deba hacer es cambiar las variables de entorno en el archivo .env que se genera al momento de ejecutar el programa

  2. Al iniciar el proceso de descarga, se presenta al usuario la opción de elegir entre dos modalidades:

    • Descargar un solo video (opción 1).
    • Descargar todos los videos siguientes (opción 2).
  3. Opciones.

    • Si el usuario elige la opción 1, se procede a descargar únicamente el video correspondiente a esa URL.
    • Si el usuario selecciona la opción 2, se le solicita ingresar la URL del video desde donde desea comenzar la descarga.
  4. Espere hasta que aparezca el mensaje Finding videos...

  5. Después, el proceso avanza a la siguiente etapa. El programa navega a la URL proporcionada anteriormente para comenzar la verificación de la disponibilidad de descarga de los videos. Este proceso también se aplica a los subtítulos, recursos y lecturas.

  6. Una vez completada la verificación de los videos, el programa empieza a descargar los videos encontrados 1 por 1.

  7. Los pasos en que se realiza la descarga es en el siguiente orden:

    • Descarga de lecturas: El programa descarga las lecturas al momento de cargar y las guarda en la cartpeta lectures.
    • Descarga de recursos: El programa procede a descargar los recursos asociados a los videos, asegurando que todos los materiales auxiliares estén disponibles para el usuario.
    • Descarga de subtítulos: Los subtítulos de los videos son descargados, garantizando su disponibilidad para su posterior uso, estos se encuentran dentro de la carpeta del curso, en una carpeta llamada Subs.
    • Descarga de videos: El programa comienza a descargar los videos y los descarga dentro de la carpeta de videos y dentro de otra carpeta con el nombre del curso.
  8. Con todas las descargas completadas, el proceso concluye y los videos, subtítulos y recursos estarán disponibles en una carpeta con el nombre de la clase dentro de la carpeta videos.

⚠️Possible failures

  • Si hay caídas o desconexiones de internet es posible que se pierda la conexión y no siga descargando o pasando los videos.
  • Si se queda quieto y no avanza de una clase.
  • Si después de un tiempo no se completa el captcha falla.
  • not found en los subtítulos, esto es debido a que no cumplió con algunas validaciones para poderlo descargar.
  • All retries failed. es cuando al momento de descargar un video no se pudo descargar algunas de las partes, por lo que se salta este video y sigue al siguiente.
  • Si al momento de estar buscando los videos se le da click a otra parte que redireccione a una página distinta, Genera un problema.
  • En algunos casos, debido a que el servidor puede presentar problemas no se podra descargar el video por lo que se salta y se pasa al siguiente video.

💕 Sponsor

  • Si este repositorio te ha sido útil o te ha brindado ayuda, te agradecería mucho si pudieras considerar hacer clic en el botón de sponsor. Tu apoyo es lo que impulsa la mejora continua y la creación de nuevos proyectos similares a este. Juntos, podemos seguir haciendo grandes cosas. ¡Gracias por ser parte de esta comunidad!

Sponsor me

⭐Star this project

Recuerda que también puedes ayudarme dándole clic a la estrella en este repositorio en la parte superior

✅Result

Una vez completado todo el proceso quedarán los cursos dentro de la carpeta llamada "videos" y dentro estarán otras carpetas con el nombre de cada uno de los cursos y dentro de esas carpetas estarán los videos, una carpeta de lectures, una carpeta con los subtítulos y otra con los recursos.

Este sería el resultado dentro de la carpeta Taller de Inglés Básico sobre Elementos de Trabajo:

image

➕Additional

Tip

Si deseas ver los comentarios de las clases deberás iniciar sesión pero puede ser con una cuanta sin suscripción. Puedes utilizar la extensión Tampermonkey con el siguiente script:

  • Para agregar el script a Tampermonkey simplemente es ir a las configuraciones, luego a utilities y despues agregar la url en la parte de abajo.

    image

  • Luego aparecerá otra ventana para instalar el script en Tampermonkey. Al final en la pestaña de installed userscripts deberá aparecer el script:

    image

💡Ejemplo

Como se puede ver en esta clase, se alcanzan a leer los primeros comentarios de la parte de arriba, pero mientras más se va bajando menos se podrán ver los comentarios [Imagen izquierda]. Ya una vez con el script se podrán ver todos los comentarios sin necesidad de tener una cuenta de pago [Imagen derecha].

platzi-download's People

Contributors

oscardogar avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

platzi-download's Issues

No descarga los trozos de videos y no convierte MP4 creo que tiene que ver con el fix: 🐛 Update user agent and handle additional download elements #83, mi user agente es la version 123 de chrome

Estimado Oscar, le comento, el archivo se ejecuta perfectamente pero a la hora de find videos , crea la carperta Info videos pero no logra encontrar los trozos de videos para unirlos, borra la carpeta y no se genera el mp4. tengo instaldo el ffmpeg con su path en el equipo. adjunto el comportamiento en:
no funciona ni en modo 1 ni en modo 2 mismo comportamineto
image

al final
image

La barra dice que esta encontrando los videos pero al final crea la carpeta pero no descarga los trozos de video para unirlos.

nuevo error

hola oscar buenas noches, espero estes bien y gracias por tu trabajo, me ha aparecido este nuevo error :
image
podria tener solucion,gracias

Not working

Check details here.

**Please enter the URL of the class you want to download: https://platzi.com/clases/4294-excel-avanzado-macros/54815-que-es-vba-y-que-son-las-macros/

Do you want to download only this video or this and the following videos?

  1. Just this one
  2. This one and the following
    Type: 1
    Finding videos...
    Message: element click intercepted: Element is not clickable at point (161, 744)
    (Session info: chrome=123.0.6312.86)
    Stacktrace:
    GetHandleVerifier [0x00DF4CC3+225091]
    (No symbol) [0x00D24E11]
    (No symbol) [0x00BC9A7A]
    (No symbol) [0x00C06D42]
    (No symbol) [0x00C05574]
    (No symbol) [0x00C035DB]
    (No symbol) [0x00C027BA]
    (No symbol) [0x00BF98DE]
    (No symbol) [0x00C1F55C]
    (No symbol) [0x00BF930E]
    (No symbol) [0x00C1F7F4]
    (No symbol) [0x00C35CB0]
    (No symbol) [0x00C1F2F6]
    (No symbol) [0x00BF79B9]
    (No symbol) [0x00BF879D]
    sqlite3_dbdata_init [0x01269A63+4064547]
    sqlite3_dbdata_init [0x0127106A+4094762]
    sqlite3_dbdata_init [0x0126B968+4072488]
    sqlite3_dbdata_init [0x00F6C9C9+930953]
    (No symbol) [0x00D307E4]
    (No symbol) [0x00D2AD08]
    (No symbol) [0x00D2AE31]
    (No symbol) [0x00D1CAA0]
    BaseThreadInitThunk [0x76637BA9+25]
    RtlInitializeExceptionChain [0x7764BDAB+107]
    RtlClearBits [0x7764BD2F+191]

Press enter to exit
Exception ignored in: <function Chrome.del at 0x000001613B6CB740>
Traceback (most recent call last):
File "undetected_chromedriver_init_.py", line 843, in del
File "undetected_chromedriver_init_.py", line 798, in quit
OSError: [WinError 6] Controlador no válido

nuevo error

hola oscar espero estes bien, ha aparecido este error, y la pagina de login de platzi ha cambiado
Screenshot_2

Screenshot_3

No descarga los videos.

Recorre la búsqueda de todos los videos y al momento de empezar a descargar los videos enseguida dice finished

Soporte para MAC

Hola es posible de tener soporte para mac, osx, linux, seria muy valioso. Gracias.

Soporte para aria2

Se podría incluir en el proceso de descarga que baje con un downloader externo que se llama aria2. Este tiende a bajar mucho más rápido los chunks del stream. Solo si es posible y está dentro de sus posibilidades. Si cree que se complique cierre la issue.

Bug - Version obsoleta

Actualizaron la interfaz y dejó de funcionar completamente.
Por favor podrías actualizarla ?

Ejecuta todo perfectamente pero no convierte la Playlist a mp4/falla dependencia.cffi==1.15.1

Estimado Óscar gracias por el aporte demasiado genial hice todas las pruebas correspondientes y resulta que al instalar el archivo requerimientos.txt se me presenta un error con una de las dependencias la cual copió abajo es la única dependencia que presenta error, las demás dependencias se instalan correctamente:
la falla dice asi:

Collecting cffi==1.15.1 (from -r requirements.txt (line 5))
Using cached cffi-1.15.1.tar.gz (508 kB)
Installing build dependencies ... done
Getting requirements to build wheel ... error
error: subprocess-exited-with-error

falla dependencia.txt

revise y todas las dependencias y todas estan ok.
Corro el programa y funciona perfecto, hasta descarga 1 a 1 los trozos de los videos del archivo M3U8, hasta alli bien.
image

Pero luego de descargar todos los trozos..no genera el mp4. sino que queda la playlist en M3u8..:(

image

Donde podra estar la falla.. Ah por cierto el sistema al revisar el sistema instala por defecto el cffi==1.16.0 de manera correcta pero no es la version que dice requerimientos.txt.

Nueva interfaz y usar yt-dlp

Bro una consulta has considerado actualizarlo a la nueva interfaz? Ya que con la nueva interfaz hay nuevas classes en las etiquetas html y no lo reconoce Selenium.

Y otra no has considerado cambiar para descarga del m3u8 yt-dlp creo que podría ser un poco más rápido.

Desde ya muy agradecido por el programa, muy bien hecho.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.