In un'app Web su cui sto lavorando, l'utente può creare un archivio zip di una cartella piena di file. Qui ecco il codice:Crea archivio zip per download immediato
files = torrent[0].files
zipfile = z.ZipFile(zipname, 'w')
output = ""
for f in files:
zipfile.write(settings.PYRAT_TRANSMISSION_DOWNLOAD_DIR + "/" + f.name, f.name)
downloadurl = settings.PYRAT_DOWNLOAD_BASE_URL + "/" + settings.PYRAT_ARCHIVE_DIR + "/" + filename
output = "Download <a href=\"" + downloadurl + "\">" + torrent_name + "</a>"
return HttpResponse(output)
Ma questo ha l'effetto collaterale sgradevole di una lunga attesa (10 + secondi), mentre l'archivio zip in corso. È possibile saltare questo? Invece di salvare l'archivio in un file, è possibile inviarlo direttamente all'utente?
Credo che torrentflux fornisca questa funzione di excat di cui sto parlando. Essere in grado di comprimere GB di dati e scaricarli in un secondo.
Penso che questo possa essere quello che sta chiedendo. – Travis
Consente oggetti simili a file. Si può avere un oggetto simile a un file che funge da stream bufferizzato - guarda la mia risposta! –