Abrir un cuadro de diálogo de descarga de archivos en Python

Se puede generar un cuadro de diálogo de descarga de archivos para que el usuario final descargue archivos como pdf, objetos multimedia, documentos, etc. en Python mediante el uso del encabezado HTTP . Resulta útil cuando existe la necesidad de desarrollar una función en la que, en lugar de mostrar los archivos en el navegador, el archivo que contiene se descarga automáticamente.
Por ejemplo, si necesita que se descargue un archivo (GeeksForGeeks.txt) al hacer clic en un enlace de la base de datos, el código se vería algo así: 
 

Python3

# python_script.py
 
# HTTP Header
print ("Content-Type:application/octet-stream; name = \"FileName\"\r\n")
print ("Content-Disposition: attachment; filename = \"FileName\"\r\n\n")
 
# Original File
my_file = open("GeeksForGeeks.txt", "rb")
 
# read the file content
text = my_file.read();
 
print (text)
 
# Close opened file
my_file.close()

Si solo ejecuta el script, solo leerá el archivo original como se muestra a continuación: 
 

Nota: hay que asegurarse de que el archivo que se va a descargar esté en el mismo directorio que el script de Python.
Usando la secuencia de comandos en su aplicación: 
El siguiente código es un ejemplo simple del uso de la secuencia de comandos anterior en una aplicación: 
 

html

<html>
<body>
<form enctype = "multipart/form-data" action = "python_script.py" method = "get">
 
<p>File link:<a href="GeeksForGeeks.txt" download>Click Here</a></p>
 
</form>
</body>
</html>                   

Producción: 
 

Al hacer clic en el enlace «Haga clic aquí», aparecerá el cuadro de descarga y comenzará a descargar el archivo.
 

Publicación traducida automáticamente

Artículo escrito por RajuKumar19 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *