Mthrfkr commited on
Commit
c41174e
·
verified ·
1 Parent(s): 8c65fc6

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +18 -11
app.py CHANGED
@@ -1,20 +1,27 @@
1
  import gradio as gr
 
 
2
 
3
- def crear_bytes(palabra):
4
- # Genera los bytes del archivo con la palabra proporcionada
5
- contenido = palabra.encode("utf-8")
6
- return contenido
 
 
 
 
7
 
8
- # Usamos Blocks para poder aprovechar DownloadButton
9
  with gr.Blocks() as demo:
10
- gr.Markdown("## 📥 Generador de archivo de texto en memoria")
11
  palabra = gr.Textbox(label="Escribe una palabra", placeholder="Tu palabra aquí...")
12
- descargar = gr.DownloadButton(
13
- func=crear_bytes,
 
 
14
  inputs=[palabra],
15
- file_name=lambda x: f"{x}.txt",
16
- label="Descargar archivo"
17
  )
18
 
19
- demo.launch(server_name='0.0.0.0', server_port=7860)
 
20
 
 
1
  import gradio as gr
2
+ import tempfile
3
+ import os
4
 
5
+ # Genera un archivo de texto temporal con la palabra proporcionada
6
+ def crear_archivo(palabra):
7
+ # Crea un temporario en disco (se elimina al reiniciar el espacio)
8
+ with tempfile.NamedTemporaryFile(mode="w", delete=False, suffix=".txt") as f:
9
+ f.write(palabra)
10
+ temp_path = f.name
11
+ # Gradio File espera la ruta al archivo
12
+ return temp_path
13
 
 
14
  with gr.Blocks() as demo:
15
+ gr.Markdown("## 📥 Generador de archivo de texto\nEscribe una palabra y pulsa Descargar para obtener tu .txt en disco temporal")
16
  palabra = gr.Textbox(label="Escribe una palabra", placeholder="Tu palabra aquí...")
17
+ download_btn = gr.Button("Descargar archivo", variant="primary")
18
+ archivo = gr.File(label="Archivo generado")
19
+ download_btn.click(
20
+ fn=crear_archivo,
21
  inputs=[palabra],
22
+ outputs=[archivo]
 
23
  )
24
 
25
+ if __name__ == "__main__":
26
+ demo.launch(server_name="0.0.0.0", server_port=7860)
27