Files
WeChatDataAnalysis/src/wechat_decrypt_tool/api.py
T
2977094657 0445889b9b feat(chat): 新增聊天记录离线导出接口
- 支持批量范围(选中/全部/群聊/单聊)与时间筛选
- 支持 json/txt 导出并打包为 zip,附带 manifest/report
- 可选打包离线媒体与头像;隐私模式下隐藏字段并禁用媒体/头像
- 提供任务查询/取消/下载与 SSE 进度事件流
- 修复导出路径名清理的正则误伤
2025-12-23 20:25:55 +08:00

51 lines
1.5 KiB
Python

"""微信解密工具的FastAPI Web服务器"""
from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware
from .logging_config import setup_logging, get_logger
from .path_fix import PathFixRoute
from .routers.chat import router as _chat_router
from .routers.chat_export import router as _chat_export_router
from .routers.chat_media import router as _chat_media_router
from .routers.decrypt import router as _decrypt_router
from .routers.health import router as _health_router
from .routers.media import router as _media_router
from .routers.wechat_detection import router as _wechat_detection_router
# 初始化日志系统
setup_logging()
logger = get_logger(__name__)
app = FastAPI(
title="微信数据库解密工具",
description="现代化的微信数据库解密工具,支持微信信息检测和数据库解密功能",
version="0.1.0",
)
# 设置自定义路由类
app.router.route_class = PathFixRoute
# Enable CORS for React frontend
app.add_middleware(
CORSMiddleware,
allow_origins=["*"],
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
app.include_router(_health_router)
app.include_router(_wechat_detection_router)
app.include_router(_decrypt_router)
app.include_router(_media_router)
app.include_router(_chat_router)
app.include_router(_chat_export_router)
app.include_router(_chat_media_router)
if __name__ == "__main__":
import uvicorn
uvicorn.run(app, host="0.0.0.0", port=8000)