博客
关于我
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 从入门到精通:30天速成教程到底有多狠?你能坚持下来吗?
    查看>>
    Python 从数据库中存储和检索密码的最安全方法
    查看>>
    Python语言及其应用 - 知识点遍历
    查看>>
    Python 优化提速的 8 个小技巧
    查看>>
    Python 余弦相似度与皮尔逊相关系数 计算
    查看>>
    python 使用execjs 报编码错误解决办法,UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0xac in position 145: il
    查看>>
    python 使用filetype校验文件
    查看>>
    Python 使用flush函数将缓冲区数据立即写磁盘
    查看>>
    python 使用in判断不准确,in不好使
    查看>>
    Python 使用pandas 进行查询和统计详解
    查看>>
    Redis 配置文件redis.conf详细解释
    查看>>
    python网络爬虫(2)——scrapy框架的基础使用
    查看>>
    python网络爬虫实例教程试读_Python网络爬虫实战教程(全套完整版) - 学途无忧网 - 做技术的王者 - Powered By EduSoho...
    查看>>
    Python 使用哈希函数用于加密
    查看>>
    Python 依赖管理的革新——Poetry 深度解析
    查看>>
    python 保留精度及增加去除数字的千位分隔符(金额化数字)
    查看>>
    python 倒计时 9,8,7,。。。。。。0
    查看>>
    Python 入门开发学习笔记之数据的增删改查
    查看>>
    Python 入门教程(2)搭建环境 2.4、VSCode配置Node.js运行环境
    查看>>