معلومات المصدر
- المستودع
- konglr/Lottery
- آخر نشاط في المصدر
- ١٣ مارس ٢٠٢٦ في ١٣:١٤
- لغة SKILL.md المكتشفة
- الصينية
- النجوم
- ١٤
- التفرعات
- ٥
خيارات التثبيت
يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.
مراجعة ملفات المصدر
اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.
عرض SKILL.md
SKILL.md
تعليمات المصدر · معاينة للقراءة فقط- name
- data_management
- description
- 彩票数据管理手册,包含数据抓取、增量更新逻辑及多彩种数据预处理规则。
# 彩票数据管理手册
本项目的数据流程分为 **数据同步 (Sync)** 和 **数据处理 (Process)** 两个核心环节。本手册详细记录了相关的逻辑与规则。
## 1. 数据同步逻辑 (Data Synchronization)
数据同步主要由 `request_data_update.py` 负责,采用增量同步与覆盖更新相结合的策略。
### 1.1 增量/覆盖同步策略
为了解决中奖详情(winnerDetails)可能延迟发布的问题,同步逻辑遵循以下规则:
- **抓取范围**:每次同步尝试获取官方接口最近的 100 条记录。
- **期号匹配**:对比本地最新期号(`local_latest`),抓取所有期号 **>=** `local_latest` 的数据。
- **覆盖更新**:使用 `>=` 而非 `>` 是为了确保本地最新的一期能够被重新抓取。如果官方在中奖数据到账后更新了列表,本地记录将被最新的、含完整中奖信息的记录覆盖。
- **去重处理**:合并数据后,按期号降序排列并执行 `drop_duplicates`,确保每期仅保留最新抓取到的版本。
### 1.2 异常处理
- **接口校验**:同步前会对比 `local_latest` 与系统总期数。如果本地已是最新,则跳过抓取。
- **格式归一化**:不同彩种的期号格式(长/短格式)在对比前会进行归一化处理(由 `normalize_issue` 函数执行)。
---
## 2. 数据处理规则 (Data Processing Rules)
数据预处理由 `request_process_all_data.py` 负责,核心目标是将原始 JSON 响应转化为标准化的分析特征。
### 2.1 奖级映射与归一化
程序根据官方备注(`remark`)和奖级 ID(`awardEtc`)进行智能映射:
- **双色球 (SSQ)**:
- 识别 1-6 等奖。
- **福运奖**:第 7 顺位奖项或备注为“福运奖”的记录映射为标准 `福运奖` 字段。
- **超级大乐透 (DLT)**:
- 支持 1-9 等奖。
- **追加数据**:仅大乐透保留 `追加注数` 和 `追加奖金` 字段。
- **福彩3D / 排列三 / 排列五**:
- 映射为 `直选` / `单选`、`组选三`、`组选六` 等特定奖项名称。
### 2.2 字段自动清理 (Generalized Column Cleanup)
为了保持数据纯净,程序会执行严格的列清理:
- **白名单机制**:基于每个彩种定义的 `unique_tiers` 动态生成允许的列名集合。
- **无用列删除**:
- 自动删除非当前彩种定义的奖级列(如双色球中的 `七等奖` 或 `追加*` 相关列)。
- 自动清理历史遗留的错误列(如 3D 数据中误存的 `一等奖` 字样列)。
- 仅保留 `注数`、`奖金` 以及(仅限大乐透)`追加*` 相关后缀的奖项列。
### 2.3 特征工程
预处理阶段会自动计算以下统计指标:
- **基础指标**:和值、跨度、奇偶比、大小比。
- **连号/跳号**:二连、三连及以上,二跳、三跳等。
- **形态指标**:AC 值、重号、邻号、孤号。
- **区域分布**:根据三区划分逻辑计算各区分布情况。
---
## 3. 运行指南
- **同步最新数据**:执行 `python request_data_update.py`。
- **全局重处理**:如果需要重新生成所有历史数据的特征或应用新的清理规则,执行 `python request_process_all_data.py`。
---
*上次更新:2026-03-13*
عرض على GitHub