问题1:如何使用flask接收前端传送过来的的Excel文件并将Excel文件数据导入到数据库Mysql中进行存储?
问题2:如何将存储在Mysql数据库中的数据以JSON格式传回给前端?

Flask文件传输问题
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
关注
问题1.
1.在Flask应用程序中,使用request.files获取上传的文件对象,并保存到本地。from flask import Flask, request app = Flask(__name__) @app.route('/upload', methods=['POST']) def upload_file(): file = request.files['file'] file.save('path/to/save/file.xlsx') return 'File uploaded successfully'
2.使用pandas库读取Excel文件中的数据。
import pandas as pd data = pd.read_excel('path/to/save/file.xlsx')
3.使用pymysql库连接到MySQL数据库,并将数据插入到数据库中。
import pymysql # 连接到MySQL数据库 conn = pymysql.connect(host='localhost', user='your_username', password='your_password', database='your_database') # 创建游标对象 cursor = conn.cursor() # 使用循环遍历处理后的Excel数据,执行插入操作 for row in data.iterrows(): # 获取每一行数据并执行插入语句 insert_query = f"INSERT INTO your_table_name (column1, column2, ...) VALUES (%s, %s, ...)" cursor.execute(insert_query, tuple(row)) # 提交事务并关闭游标和连接 conn.commit() cursor.close() conn.close()
问题2:
1.查询MySQL数据库中的数据。
import pymysql from flask import jsonify # 连接到MySQL数据库 conn = pymysql.connect(host='localhost', user='your_username', password='your_password', database='your_database') # 创建游标对象 cursor = conn.cursor() # 执行查询语句,获取数据 select_query = "SELECT * FROM your_table_name" cursor.execute(select_query) # 获取所有行数据 result = cursor.fetchall() # 关闭游标和连接 cursor.close() conn.close()
2.将查询结果转换为JSON格式。
# 转换查询结果为列表字典格式 data = [] columns = [column[0] for column in cursor.description] for row in result: data.append(dict(zip(columns, row))) # 将数据转换为JSON格式 json_data = jsonify(data) return json_data
3.在Flask应用程序中定义路由,将JSON数据返回给前端。
@app.route('/data', methods=['GET']) def get_data(): # 查询MySQL数据库中的数据并转换为JSON格式 # ... return json_data
此处定义的路由是/data,当前端访问/data路由时,将返回存储在MySQL数据库中的数据以JSON格式。
按照这些步骤就可以解决你的问题,你看还有哪些地方不明白,可以继续交流。本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报