我正在使用xlwt库。它很简单并且具有所有基本功能:创建文件页面、写入一个单元格、合并单元格以及应用样式和保存到剪贴板。发送 XLS 文件以响应对 Google App Engine 的请求的示例:
# необходимые библиотеки
# для сохранения
import StringIO
# для обработки таблиц
import xlwt
# для оформления ячеек
from xlwt import easyxf
...
# в каком-нибудь обработчике GET-запроса
# стиль для ячеек
usualStyle = easyxf('align: vert centre, horiz center')
# создание файла
workbook = xlwt.Workbook(encoding="UTF-8")
# создание страницы
sh = workbook.add_sheet('CohortAnalysis')
# запись одной ячейки; аргумент стиля не обязателен
sh.write(row_number, column_number, "some value", usualStyle)
# запись в объединённую ячейку; можно добавить стиль
sh.write_merge(top_row, bottom_row, left_column, right_column "merged cells")
# сохранение в буфер и передача в ответ на запрос
out = StringIO.StringIO()
workbook.save(out)
filename = "table name"
filename = filename.encode('ascii')
self.response.headers['Content-Type'] = 'application/vnd.ms-excel'
self.response.headers.add_header("Content-Disposition", "attachment; filename=" + filename + ".xls")
self.response.set_cookie("fileDownload", "true")
self.response.out.write(out.getvalue())
我正在使用xlwt库。它很简单并且具有所有基本功能:创建文件页面、写入一个单元格、合并单元格以及应用样式和保存到剪贴板。发送 XLS 文件以响应对 Google App Engine 的请求的示例:
xlwt有用:
Google App Engine 中默认没有这样的库,必须手动安装在项目文件夹中。以下是 Google Cloud Platform 上的流程说明。