Weaita commited on
Commit
73989ff
verified
1 Parent(s): b2bde68

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +29 -25
app.py CHANGED
@@ -1,31 +1,35 @@
1
  import gradio as gr
2
- import speedtest
 
3
 
4
- def run_speedtest():
5
- st = speedtest.Speedtest()
6
- st.get_best_server() # Selecciona el mejor servidor basado en la latencia
7
- download_speed = st.download()
8
- upload_speed = st.upload()
9
- ping = st.results.ping
10
-
11
- # Convertir de bits por segundo a megabits por segundo y redondear
12
- download_mbps = round(download_speed / 1e6, 2)
13
- upload_mbps = round(upload_speed / 1e6, 2)
14
-
15
- result_text = (
16
- f"**Resultados del Speedtest:**\n\n"
17
- f"Descarga: **{download_mbps} Mbps**\n"
18
- f"Subida: **{upload_mbps} Mbps**\n"
19
- f"Ping: **{ping} ms**"
20
- )
21
- return result_text
22
 
 
23
  iface = gr.Interface(
24
- fn=run_speedtest,
25
- inputs=[],
26
- outputs="markdown",
27
- title="SpeedTest de Internet",
28
- description="Ejecuta un test de velocidad de Internet usando speedtest-cli y muestra los resultados en una interfaz interactiva."
29
  )
30
 
31
- iface.launch()
 
 
 
1
  import gradio as gr
2
+ from pytube import YouTube
3
+ import os
4
 
5
+ def download_youtube_video(url):
6
+ try:
7
+ # Crea el objeto YouTube a partir de la URL
8
+ yt = YouTube(url)
9
+ # Selecciona el stream progresivo con extensi贸n mp4, ordenado de mayor a menor resoluci贸n
10
+ stream = yt.streams.filter(progressive=True, file_extension='mp4').order_by('resolution').desc().first()
11
+ if stream is None:
12
+ return "No se encontr贸 un stream adecuado para descargar."
13
+
14
+ # Define un directorio de descarga y aseg煤rate de que exista
15
+ download_folder = "downloads"
16
+ os.makedirs(download_folder, exist_ok=True)
17
+
18
+ # Descarga el video en el directorio especificado
19
+ output_path = stream.download(output_path=download_folder)
20
+ return f"Video descargado: {output_path}"
21
+ except Exception as e:
22
+ return f"Error al descargar el v铆deo: {str(e)}"
23
 
24
+ # Crea la interfaz Gradio
25
  iface = gr.Interface(
26
+ fn=download_youtube_video,
27
+ inputs=gr.Textbox(label="URL del v铆deo de YouTube", placeholder="Ingresa la URL aqu铆..."),
28
+ outputs=gr.Textbox(label="Resultado"),
29
+ title="Descargador de V铆deos de YouTube",
30
+ description="Ingresa la URL de un v铆deo de YouTube y descarga la versi贸n en MP4 de mayor resoluci贸n disponible."
31
  )
32
 
33
+ if __name__ == "__main__":
34
+ iface.launch()
35
+