Python读取excel并形成api接口案例

复制代码
from fastapi import FastAPI, HTTPException
import pandas as pd
import uvicorn
import configparser
import os

app = FastAPI(title="Excel读取API", version="1.0")

# 读取配置文件
current_dir = os.path.dirname(os.path.abspath(__file__))
config_path = os.path.join(current_dir, "config.ini")
config = configparser.ConfigParser()
config.read(config_path, encoding="utf-8")
EXCEL_FILE_PATH = config["EXCEL"]["file_path"]

# API接口
@app.get("/read-excel")
def read_excel(sheet_name: str | int = 0):
    try:
        df = pd.read_excel(EXCEL_FILE_PATH, sheet_name=sheet_name, engine="openpyxl")
        return {
            "code": 200,
            "msg": "读取成功",
            "columns": df.columns.tolist(),
            "data": df.to_dict("records")
        }
    except FileNotFoundError:
        raise HTTPException(status_code=404, detail=f"文件不存在:{EXCEL_FILE_PATH}")
    except Exception as e:
        raise HTTPException(status_code=500, detail=str(e))

if __name__ == "__main__":
    uvicorn.run(app, host="0.0.0.0", port=8002)
相关推荐
默_笙3 天前
🍙 给每个请求过安检:FastAPI 是怎么把校验写进类型注解的
python
qq_426003963 天前
启动playwright录制codegen生成自动化测试脚本
python·自动化
虎头金猫3 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
长沙三为智能科技3 天前
家政小程序开发从0到上线:五阶段交付流程与验收清单
python
伞伞悦读3 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
只睡四小时3 天前
Canvas 弹道联机实战:700 行 + 固定时间步长
python·websocket·html5·游戏开发·canvas
奇思妙想聪明勤奋的小羊3 天前
DeepAgents第5章:子Agent 与上下文隔离—让 Agent学会委派
人工智能·python·学习·语言模型
lpfasd1233 天前
2026年第38周GitHub趋势周报
python·科技·github
IZero073 天前
Jev 与 Laya
python·语言模型