Tôi đã sử dụng stackoverflow trong một thời gian và nó đã giúp tôi rất thường xuyên. Bây giờ tôi có một vấn đề tôi không thể giải quyết bản thân mình hoặc thông qua tìm kiếm. Tôi đang cố gắng để xuất tập tin excel của tôi được tạo ra bởi openpyxl trong trình duyệt như tôi đã làm nó với phpexcel. Phương pháp này có vẻ giống nhau, nhưng tôi chỉ nhận được tệp bị hỏng. Mã của tôi trông giống như sau:cách xuất xlsx do Openpyxl tạo ra cho trình duyệt?
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)
Tôi sử dụng phiên bản 1.5.8 và python 2.7. Không có cách tiếp cận nào hoạt động. Khi tôi chỉ sử dụng nó từ máy tính để bàn và không phải trình duyệt nó hoạt động hoàn hảo. Tôi sẽ rất biết ơn sự giúp đỡ.
P.S. xin vui lòng không cho tôi biết rằng việc sử dụng ngôn ngữ hoặc chương trình khác sẽ dễ dàng hơn. Tôi cần phải giải quyết điều này với python.
Từ câu hỏi này, tôi đoán bạn không có kinh nghiệm về lập trình web trong python. Bạn không thể đặt mã này bên trong * .py trong thư mục gốc của tài liệu và mong muốn nó chạy giống như * .php. – Dikei
Nội dung của bạn- * tiêu đề trông thiếu sót. Họ nên sử dụng kết thúc dòng CR/LF. Bạn có thể lấy mẫu 'text/html' đơn giản được cung cấp chính xác bởi tập lệnh này không? Nếu không, hãy sửa lỗi đó trước. – tripleee
Tôi có đủ kinh nghiệm để biết chạy nó từ cgi-bin. Tôi có các kịch bản khác đang chạy. Đây là lần đầu tiên không xuất ra những gì tôi cần. Có văn bản sạch/html hoạt động hoàn hảo, ít nhất là theo như tôi đã thử nghiệm. Tôi không thấy lý do tại sao tôi nên sử dụng CR/LF ... – seeebek