fix: 修复代码审查反馈全部问题
审查意见修复清单:
P1 列映射语义修复 (lottery.py):
- _normalize_history_format() 不再将红球2-6映射到开机号/和值特征/奇偶比等
格式A不含这些特征字段,缺失列留空,前端做降级显示
- 删除已用于构建号码列的原始分列,避免数据重复
P2 架构优化:
- 提取 Excel 兼容逻辑到公共模块 history_loader.py
lottery.py 和 app.py 共同引用,消除三处重复代码
- web_executor.py 标记为已废弃,功能已整合到 app.py
部署修复:
- 删除 deploy/lotto-web.service (旧服务),仅保留 lotto-app.service
- 更新 deploy/DEPLOY.md: 端口5000→8085, 接口清单更新, 添加迁移说明
安全加固:
- API Token 改为环境变量读取: os.environ.get('LOTTO_API_TOKEN')
- 错误信息不再暴露内部异常,改为通用错误消息+日志记录
- 目录遍历防护改用 os.path.realpath 检查最终路径
其他:
- .gitignore 补充排除 双色球历史数据.xlsx
- app.py 引用公共模块,简化 get_statistics_data 和 load_history_dataframe
测试验证: 全部 API 测试通过,120条历史数据正确解析
Issue: BIZ-75
This commit is contained in:
+13
-3
@@ -1,9 +1,19 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
"""
|
||||
双色球数据抓取 Web 服务
|
||||
提供 Web 界面执行抓取任务和查看实时结果
|
||||
监听 0.0.0.0,支持局域网访问
|
||||
双色球数据抓取 Web 服务 [已废弃]
|
||||
|
||||
⚠️ 此模块已废弃,功能已整合到 app.py 统一入口中。
|
||||
请使用 app.py 作为主服务(端口 8085),它已包含:
|
||||
- /fetch 路由(抓取控制台)
|
||||
- /api/fetch/status(抓取状态)
|
||||
- /api/fetch/execute(触发抓取)
|
||||
|
||||
本文件仅保留用于历史参考,不应再独立部署。
|
||||
|
||||
原始功能:
|
||||
提供Web界面执行抓取任务和查看实时结果
|
||||
监听 0.0.0.0,支持局域网访问
|
||||
"""
|
||||
|
||||
from flask import Flask, send_from_directory, jsonify
|
||||
|
||||
Reference in New Issue
Block a user