Stavo usando lo stackoverflow da un po 'e mi ha aiutato molto spesso. Ora ho un problema che non potevo risolvere da solo o attraverso la ricerca. Sto provando ad emettere il mio file excel generato da openpyxl nel browser mentre lo stavo facendo con phpexcel. Il metodo sembra essere lo stesso, ma ho solo un file rotto. Il mio codice è simile al seguente:come generare xlsx generato da Openpyxl nel browser?
from openpyxl.workbook import Workbook
from openpyxl.writer.excel import ExcelWriter
from openpyxl.writer.excel import save_virtual_workbook
from openpyxl.cell import get_column_letter
from StringIO import StringIO
print 'Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
print 'Content-Disposition: attachment;filename="results.xlsx"'
print 'Cache-Control: max-age=0\n'
output = StringIO()
wb = Workbook()
ws = wb.worksheets[0]
ws.cell('A1').value = 3.14
wb.save(output)
print output.getvalue()
#print save_virtual_workbook(wb)
Io uso la versione 1.5.8 e python 2.7. Nessuno degli approcci funziona. Quando lo uso da desktop e non da browser, funziona perfettamente. Sarei molto grato per l'aiuto.
P.S. per favore non dirmi che usare un'altra lingua o un programma sarebbe più facile. Ho bisogno di risolvere questo con Python.
Da questa domanda, presumo che non abbiate esperienze sulla programmazione web in Python. Non è possibile inserire un codice all'interno di un * .py nella root del documento e aspettarsi che venga eseguito come * .php. – Dikei
Le intestazioni Contenuto- * sembrano imperfette. Dovrebbero usare terminazioni di linea CR/LF. Puoi ottenere un semplice esempio di 'text/html' pubblicato correttamente da questo script? Se no, aggiustalo per primo. – tripleee
Ho abbastanza esperienza per sapere come eseguirlo da cgi-bin. Ho altri script in esecuzione. Questo è il primo che non emette ciò di cui ho bisogno. Sì clean text/html funziona perfettamente, almeno per quanto ho provato. Non vedo perché dovrei usare CR/LF ... – seeebek