flask如何导出MySQL为Excel文件
时间: 2023-11-11 18:03:22 浏览: 93
php将mysql导出到excel
5星 · 资源好评率100%
要将 Flask 中的 MySQL 数据库导出为 Excel 文件,你可以使用 Python 的 Pandas 库来实现。Pandas 提供了 DataFrame 类,可以方便地处理数据并将其导出为 Excel 文件。以下是一个简单的示例代码:
```python
import pandas as pd
from flask import Flask, make_response
import pymysql
app = Flask(__name__)
# MySQL 连接配置
MYSQL_HOST = 'localhost'
MYSQL_PORT = 3306
MYSQL_USER = 'root'
MYSQL_PASSWORD = 'password'
MYSQL_DB = 'database_name'
# 查询语句
QUERY = 'SELECT * FROM table_name'
@app.route('/export_excel')
def export_excel():
# 连接 MySQL 数据库
conn = pymysql.connect(host=MYSQL_HOST, port=MYSQL_PORT, user=MYSQL_USER, password=MYSQL_PASSWORD, db=MYSQL_DB, charset='utf8')
# 查询数据
df = pd.read_sql(QUERY, conn)
# 导出 Excel 文件
response = make_response(df.to_excel('data.xlsx', index=False))
# 设置响应头
response.headers['Content-Type'] = 'application/octet-stream'
response.headers['Content-Disposition'] = 'attachment; filename=data.xlsx'
return response
if __name__ == '__main__':
app.run()
```
在上面的代码中,我们首先定义了 MySQL 数据库的连接信息和要查询的语句。然后,在 `export_excel` 视图函数中,我们使用 Pandas 从 MySQL 数据库中读取数据,并将其导出为 Excel 文件。最后,我们设置了响应头,将 Excel 文件作为附件下载到客户端。
注意:在执行以上代码时,需要先安装 Pandas 和 PyMySQL 库。你可以使用以下命令进行安装:
```
pip install pandas pymysql
```
此外,你需要根据实际情况修改 MySQL 连接信息和查询语句。
阅读全文