wuzilong eb62100364 提交 há 6 meses atrás
..
README.md 6f9bf91f15 tijiao' há 6 meses atrás
cleanup_selection_records.py 6f9bf91f15 tijiao' há 6 meses atrás
config.ini eb62100364 提交 há 6 meses atrás
config.ini.example 6f9bf91f15 tijiao' há 6 meses atrás
requirements.txt 6f9bf91f15 tijiao' há 6 meses atrás

README.md

选品记录清理脚本

功能

定时清理 buff_selection_request 表中的历史选品记录:

  • 执行频率:每 1 小时执行一次(可配置)
  • 清理规则:每个用户保留最新的一条选品记录,删除其他历史记录
    • 如果用户只有 1 条选品记录,则不删除
    • 如果用户有多条选品记录,保留最新(id 最大)的一条
  • 启动方式:后台持续运行,定时执行清理任务

使用方法

1. 安装依赖

pip install -r requirements.txt

2. 配置数据库连接

复制配置文件并修改数据库连接信息:

copy config.ini.example config.ini

编辑 config.ini:

[database]
host = localhost
port = 3306
user = root
password = your_password_here
database = buff
charset = utf8mb4

[script]
# 扫描间隔(秒),默认每 1 小时执行一次
interval_seconds = 3600

3. 运行脚本

python cleanup_selection_records.py

日志输出示例

==================================================
选品记录清理脚本已启动
清理周期: 每 3600 秒执行一次 (60 分钟)
清理规则: 每个用户保留最新的一条选品记录
启动时间: 2026-04-06 10:30:00
==================================================

[2026-04-06 10:30:01] 清理完成: 删除 15 条历史选品记录, 剩余 85 条

开始定时清理,每 3600 秒执行一次...

清理逻辑说明

假设有以下选品记录(同一用户):

id user_id created_at
1 100 2026-04-01
5 100 2026-04-02
10 100 2026-04-03
20 100 2026-04-04

清理后只会保留 id=20 的记录,其他三条都会被删除。

配置说明

配置项 默认值 说明
interval_seconds 3600 清理任务执行间隔(秒)