1.0.2-hotfix: new readme

This commit is contained in:
2026-01-26 16:39:19 +08:00
parent d8b70c1cf7
commit f147b4d65a

View File

@@ -1,13 +1,55 @@
# YRTV 项目说明 till 0.5.0
# YRTV 项目说明 till 1.0.2hotfix
## 项目概览
yrtv这一块
YRTV 是一个基于 CS2 比赛数据的综合分析与战队管理平台。它集成了数据采集、ETL 清洗建模、特征挖掘以及现代化的 Web 交互界面
核心目标是为战队提供数据驱动的决策支持包括战术分析、队员表现评估、阵容管理Clubhouse以及实时战术板功能。
数据来源与处理核心包括:
- 比赛页面的 iframe JSON 数据(`iframe_network.json`
- 可选的 demo 文件(`.zip/.dem`
- L1A/L2/L3 分层数据库建模与校验
## Web 交互系统 (New in v0.5.0)
基于 Flask + TailwindCSS + Alpine.js 构建的现代化 Web 应用。
### 核心功能模块
1. **Clubhouse (战队管理)**
- **Roster Management**: 拖拽式管理当前激活阵容 (Active Roster)。
- **Scout System**: 全库模糊搜索玩家,支持按 Rating/Matches/KD 排序筛选。
- **Contract System**: 模拟签约/解约流程 (Sign/Release),管理战队资产。
- **Identity**: 统一的头像与 ID 显示逻辑 (SteamID/Name),支持自动生成首字母头像。
2. **Tactics Board (战术终端)**
- **SPA 架构**: 基于 Alpine.js 的单页应用,无刷新切换四大功能区。
- **Board (战术板)**: 集成 Leaflet.js 的交互式地图,支持战术点位标记。
- **Data (数据中心)**: 实时查看全队近期数据表现。
- **Analysis (深度分析)**:
- **Chemistry**: 任意组合 (2-5人) 的共同比赛胜率与数据分析。
- **Depth**: 阵容深度与位置分析。
- **Economy (经济计算)**: 简单的经济局/长枪局计算器。
3. **Match Center (比赛中心)**
- **List View**:
- 显示比赛平均 ELO。
- **Party Identification**: 自动识别组排车队 (👥 2-5),并用颜色区分规模 (Indigo/Blue/Purple/Orange)。
- **Result Tracking**: 基于 "Our Team" (Active Roster) 的胜负判定 (VICTORY/DEFEAT/CIVIL WAR)。
- **Detail View**:
- 按 Rating 降序排列双方队员。
- 高亮显示组排关系。
- 集成 Round-by-Round 经济与事件详情。
4. **Player Profile (玩家档案)**
- 综合能力雷达图 (六维数据)。
- 近期 Rating/KD/ADR 趋势折线图。
- 详细的历史比赛记录(含 Party info 与 Result
- 头像上传与管理。
## 自动化与运维
新增 `ETL/refresh.py` 自动化脚本,用于一键执行全量数据刷新:
- 自动清理旧数据库。
- 顺序执行 L1A -> L2 -> L3 构建。
- 自动处理 schema 迁移。
## 数据流程
1. **下载与落盘**
通过 `downloader/downloader.py` 抓取比赛页面数据,生成 `output_arena/<match_id>/iframe_network.json`,并可同时下载 demo 文件。
@@ -24,31 +66,32 @@ yrtv这一块。
```
yrtv/
├── downloader/ # 下载器(抓取 iframe JSON 与 demo
│ ├── downloader.py
│ └── README.md
├── ETL/ # ETL 脚本
│ ├── L1A.py
│ ├── L2_Builder.py
│ ├── L3_Builder.py
│ ├── README.md
│ ├── refresh.py # [NEW] 一键刷新脚本
│ └── verify/
│ ├── verify_L2.py
└── verify_deep.py
├── database/
│ ├── L1A/ # L1A SQLite 与说明
── L1B/ # L1B 目录demo 解析结果说明)
├── L2/ # L2 SQLite 与 schema
│ ├── L3/ # L3 SQLite 与 schema (特征集市)
── original_json_schema/ # schema 扁平化与未覆盖字段清单
├── database/ # SQLite 数据库存储
├── L1A/
│ ├── L2/
│ ├── L3/
── original_json_schema/
├── web/ # [NEW] Web 应用程序
│ ├── app.py # 应用入口
── routes/ # 路由 (matches, players, teams, tactics)
│ ├── services/ # 业务逻辑 (stats, web)
│ ├── templates/ # Jinja2 模板 (TailwindCSS + Alpine.js)
│ └── static/ # 静态资源 (CSS, JS, Uploads)
└── utils/
└── json_extractor/ # JSON Schema 抽取工具
```
## 环境要求
- Python 3.11.4+
- Flask, Jinja2
- Playwright下载器依赖
- pandasnumpy校验脚本依赖)
- pandas, numpy数据处理依赖)
## 数据库层级说明
### L1A