Uso pdfkit e wkhtmltopdf per generare documenti pdf. Quando genero il primo pdf tutto va bene. Quando rapidamente (entro 5 secondi) genera un altro, ottengo l'errore [Errno 9] Descrittore di file errato. Se chiudo l'errore (torna indietro nel browser) e apro di nuovo, creerà il pdf.Python Django PDFKIT - [Errno 9] Descrittore file errato
mia views.py
config = pdfkit.configuration(wkhtmltopdf='C:/wkhtmltopdf/bin/wkhtmltopdf.exe')
pdfgen = pdfkit.from_url(url, printname, configuration=config)
pdf = open(printname, 'rb')
response = HttpResponse(pdf.read())
response['Content-Type'] = 'application/pdf'
response['Content-disposition'] = 'attachment ; filename =' + filename
pdf.close()
return response
nota Forse importante: ho eseguito questo sito su IIS8, durante l'esecuzione da riga di comando (manage.py runserver python) l'errore non è presente.
Qualsiasi linea guida su come gestire questo errore sarebbe ottima.
Da dove proviene 'printname'? –
È probabile che il tuo URL venga rifiutato dal server web quando provi il ricaricamento rapido (tramite from_url) o che hai problemi ad accedere al file locale che stai cercando di creare. Puoi provare a eliminare quest'ultimo semplicemente scrivendo direttamente a una variabile passando False come nome del file di output, ad es. pdf = pdfkit.from_url ('http://google.com', False) –
puoi pubblicare il log del server dall'intervallo di tempo quando si verifica l'errore? (So che hai detto che non c'è nessun errore lì, ho solo un sospetto e voglio vedere le informazioni richieste per assicurarmi di non aver sbagliato prima di suggerire una risposta) – yuvi