博客
关于我
python基于flask搭建http服务(一)—— 实现数据查询和Excel导出
阅读量:803 次
发布时间:2023-03-07

本文共 1630 字,大约阅读时间需要 5 分钟。

技术点

本项目采用多种技术手段实现功能开发,以下是主要技术点:

  • Flask搭建简易的HTTP服务

    采用Flask框架快速搭建后端服务,支持多路由定义和返回数据。

  • Flask-Cors配置跨域请求

    使用Flask-Cors插件,轻松配置跨域访问权限,解决前后端通信中的CORS问题。

  • PyMySQL实现数据库查询

    采用PyMySQL来处理数据库操作,支持事务处理、参数化查询等功能。

  • SQLAlchemy实现数据库查询

    使用 SQLAlchemy ORM 对数据库进行抽象化操作,便于代码管理和数据库交互。

  • XLWT生成Excel文件(带样式)与导出

    通过XLWT库实现高质量的Excel文件生成,支持样式格式化和多工作表导出。

  • Pandas实现Excel文件生成与导出

    使用Pandas库进行数据处理和Excel文件生成,支持批量导出和格式化处理。

  • 具体实现

    2.1 目录结构

    项目结构清晰,便于后续开发和维护。以下是主要文件目录:

    .
    ├── main.py # 主程序入口
    ├── config.py # 配置文件,包含数据库信息等
    ├── routes.py # 路由定义文件
    ├── models.py # 数据模型定义文件
    ├── utils.py # 工具函数库
    └── static/ # 静态资源文件夹
    └── excel/ # Excel模板文件夹

    2.2 main.py

    from flask import Flask, request, render_template
    from flask_cors import CORS
    from sqlalchemy import create_engine
    from sqlalchemy.orm import sessionmaker
    import pymysql
    import pandas as pd
    import xlwt
    from datetime import datetime
    import os
    app = Flask(__name__)
    CORS(app)
    # 数据库配置
    DB_URL = "mysql://用户名:密码@localhost:3306/数据库名"
    engine = create_engine(DB_URL)
    Session = sessionmaker(bind=engine)
    session = Session()
    @app.route("/")
    def index():
    return "欢迎访问"
    @app.route("/data")
    def query_data():
    data = session.query("SELECT * FROM 表名").first()
    return {"status": "success", "data": data}
    @app.route("/export")
    def export_data():
    # 查询数据并导出
    df = pd.read_sql("SELECT * FROM 表名", session.connection)
    # 生成Excel文件
    writer = pd.ExcelWriter("输出文件.xlsx", engine="openpyxl")
    df.to_excel(writer, sheet_name="数据", index=False)
    writer.save()
    return "文件已生成"
    if __name__ == "__main__":
    app.run(debug=True)

    以上是项目的主要实现内容,结合了前端跨域处理、数据库操作、数据处理与导出等多种技术点。

    转载地址:http://cmofk.baihongyu.com/

    你可能感兴趣的文章
    python判断汉字数目
    查看>>
    python判断文件是空的,如果是空的,就删除
    查看>>
    python判断密码是否正确_python密码判断是否符合要求的方法
    查看>>
    python判断字符串包含中文_Python 判断字符串是否包含中文
    查看>>
    python删除第一行_Python 乱码指北:一行删掉根目录
    查看>>
    Python删除列表元素的三种方法
    查看>>
    python初步学习-python数据类型-集合(set)
    查看>>
    python列表生成字典_Python中将字典转换为列表的方法
    查看>>
    python列表对应元素合并为列表及判断一个列表是几维
    查看>>
    python列表去重复后按照顺序_从包含不可共元素的Python列表中删除重复元素,同时保留顺序?...
    查看>>
    python列表前几个_python之列表
    查看>>
    python列表元组
    查看>>
    Python列表/元组/字典和集合使用
    查看>>
    python列表 行列选择_python_pandas_dataframe_行列选择_切片操作
    查看>>
    python列表
    查看>>
    python列出当前目录、子目录和文件的脚本
    查看>>
    python+flask计算机毕业设计骨科门诊患者档案管理系统(程序+开题+论文)
    查看>>
    python+flask计算机毕业设计高校体测管理系统的设计与实现(程序+开题+论文)
    查看>>
    Python切片对象和__getitem__
    查看>>
    python+flask计算机毕业设计高校体育竞赛成绩管理系统的设计与实现(程序+开题+论文)
    查看>>