Objectif: enregistrer les données dans un excel
fichier
1. Origines
xlwt
Il s'agit d' python
un package tiers utilisé pour traiter les fichiers de formulaire, qui est xlwt
utilisé pour l'écriture et la xlrt
lecture. Puisque vous n'avez qu'à écrire des données dans un excel
fichier ici, le xlwt
package est simplement utilisé ici .
- installation:
pip install xlwt -i https://pypi.douban.com/simple
- Référence: ici
Les données proviennent de l'article précédent.
def saveUserInfo2EXCEL():
# 1. 创建一个工作簿workbook
xl = xlwt.Workbook(encoding='utf-8')
# 创建一个sheet对象,第二个参数是指单元格是否允许重设置,默认为False
sheet = xl.add_sheet('总用户信息', cell_overwrite_ok=True)
header_row = ["用户ID", "用户姓名", "性别", "电话", "QQ", "微信", "用户角色", "所属部门", "直接领导"]
datas = list(UserDB().getAllUserInfo())
for i in range(len(datas)):
data = [str(i+1), datas[i]['username'], datas[i]['sex'], datas[i]['phone'], datas[i]['qq'], datas[i]['weichat'], datas[i]['role'], datas[i]['department'], datas[i]['superior']]
if i==0:
for j in range(len(header_row)):
# 第一个参数代表行,第二个参数是列,第三个参数是内容,第四个参数是格式
sheet.write(i, j, header_row[j])
for k in range(len(data)):
sheet.write(i+1, k, data[k])
xl.save('download/UserInfo.xls')
Ensuite, vous pouvez ajouter un lien de téléchargement:
from savepdf import saveUserInfo2PDF, saveUserInfo2EXCEL
@app.route("/download/excel/userinfo")
def downloadUserInfoEXCEL():
saveUserInfo2EXCEL()
return send_from_directory("download", filename="UserInfo.xls", as_attachment=True)
@app.route("/download/pdf/userinfo")
def downloadUserInfoPDF():
saveUserInfo2PDF()
return send_from_directory("download", filename="UserInfo.pdf", as_attachment=True)
Remarque: il download
s'agit d'un dossier nouvellement créé sous le chemin du projet.