博客
关于我
python基于flask搭建http服务(一)—— 实现数据查询和Excel导出
阅读量:797 次
发布时间: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分离立体声wav压缩文件的左右声道
    查看>>
    Python 循环异或对文件进行加解密
    查看>>
    Python开发环境搭建(附VMware安装包及虚拟机环境)
    查看>>
    python 微信扫码登录_python实现微信第三方网站扫码登录(Django)
    查看>>
    Python 快速下载依赖
    查看>>
    python实现非参数统计的Cochran检验 (附完整源码)
    查看>>
    python 怎么验证是否安装成功 scrapy
    查看>>
    Python 手写数字识别-1
    查看>>
    Python实现接口自动化测试库(JSON与Requests)详解
    查看>>
    Python 手写数字识别-3-sklearn中的几种算法
    查看>>
    python实现SSIM和MSSSIM计算 (附完整源码)
    查看>>
    Python 打开文件注意事项
    查看>>
    python 批量修改文件名_python windows下批量修改文件名
    查看>>
    Python 抓取网页乱码问题 以及EXCEL乱码
    查看>>
    python 抓取网页内容
    查看>>
    python 按照当前日期创建文件
    查看>>
    Python 接口并发测试详解
    查看>>
    Python 接口自动化 —— requests框架
    查看>>
    python 接口自动化数据结构(如列表、字典、元组)
    查看>>
    Python 接口自动化测试中的深拷贝与浅拷贝~
    查看>>