Show the real percentage on the card, but sort with delta / (baseline + prior) so a small baseline cannot dominate. Same-day publishes stay off the rate board.
130 lines
3.3 KiB
JSON
130 lines
3.3 KiB
JSON
// 业务配置(可含注释与尾逗号)。复制为 config.jsonc 后按需修改。
|
|
// 敏感凭据请放同目录 secrets.json(见 secrets.example.json);
|
|
// `python app.py auth` 只回写 secrets.json,不会冲掉本文件注释。
|
|
//
|
|
// 兼容:仍可读旧版单一 config.json(凭据可内嵌);若存在 secrets.json 则凭据以它为准。
|
|
{
|
|
// 可选:自定义凭据路径(相对本文件目录或绝对路径)。默认 secrets.json
|
|
// "secrets_path": "secrets.json",
|
|
|
|
// favsort 代发归属等(非密钥)
|
|
"overrides": {},
|
|
"sleep": {
|
|
"min": 2.5,
|
|
"max": 7.5,
|
|
"long_every_min": 20,
|
|
"long_every_max": 40,
|
|
"long_min": 30,
|
|
"long_max": 90,
|
|
"retry_wait": 45,
|
|
},
|
|
|
|
"telegram": {
|
|
"enabled": false,
|
|
// bot_token / chat_id 建议写在 secrets.json
|
|
},
|
|
|
|
"web": {
|
|
"host": "127.0.0.1",
|
|
"port": 8080,
|
|
// auth_token 建议写在 secrets.json
|
|
"public_base_url": "",
|
|
"track": {
|
|
"enabled": true,
|
|
"header_order": ["X-Real-IP", "X-Forwarded-For"],
|
|
"trusted_proxies": [
|
|
"127.0.0.0/8",
|
|
"::1/128",
|
|
"10.0.0.0/8",
|
|
"172.16.0.0/12",
|
|
"192.168.0.0/16",
|
|
"169.254.0.0/16",
|
|
"fc00::/7",
|
|
"fe80::/10",
|
|
],
|
|
"count_bots": false,
|
|
"flush_seconds": 60,
|
|
"keep_days": 180,
|
|
"max_hits_per_ip_path_per_day": 0,
|
|
},
|
|
},
|
|
|
|
"storage": {
|
|
"database_path": "data/app.db",
|
|
"backup_dir": "data/backup",
|
|
"backup_keep_days": 14,
|
|
},
|
|
|
|
"folders": [
|
|
{ "year": 2025, "media_id": 4451053851, "title": "咻咻满-reaction-2025" },
|
|
{ "year": 2026, "media_id": 3700023351, "title": "咻咻满 reaction 合集" },
|
|
],
|
|
"track_fans": [37754047],
|
|
"up_blacklist_seed": [
|
|
261052419,
|
|
1908537643,
|
|
1701121088,
|
|
542262,
|
|
376316958,
|
|
145178393,
|
|
66389997,
|
|
293976264,
|
|
3026109,
|
|
],
|
|
|
|
// 日更默认 23:15 落盘;午夜 seed_at 用昨收盘克隆当日壳(不推进 completed)
|
|
"schedule": {
|
|
"discover_minutes": 60,
|
|
"snapshot_at": "23:15",
|
|
"seed_at": "00:00",
|
|
"candidate_ttl_days": 7,
|
|
"recent_snapshot_minutes": 60,
|
|
"recent_video_days": 2,
|
|
},
|
|
|
|
"discover": {
|
|
"keywords": ["咻咻满"],
|
|
"pages": 3,
|
|
"window_days": 7,
|
|
"candidate_min_score": 4,
|
|
},
|
|
|
|
"notify": {
|
|
"min_score": 4,
|
|
"max_items_per_message": 10,
|
|
},
|
|
|
|
"classify": {
|
|
"require_title": "咻咻满",
|
|
"self_mid": 37754047,
|
|
"reaction": ["re", "reaction", "反应"],
|
|
"charge": ["加急", "特急", "充电", "专场"],
|
|
"weak_positive": ["双人", "路人", "第一次", "首次"],
|
|
"negative": ["歌切", "切片", "搬运", "完整版", "录播", "录像"],
|
|
"date_negative": true,
|
|
"duration_boost": { "gt_30min": 1, "gt_60min": 2 },
|
|
},
|
|
|
|
"heat_weights": {
|
|
"view": 0.3,
|
|
"like": 0.2,
|
|
"coin": 0.2,
|
|
"favorite": 0.15,
|
|
"share": 0.1,
|
|
"reply": 0.03,
|
|
"danmaku": 0.02,
|
|
},
|
|
|
|
"analytics": {
|
|
"min_duration_seconds": 600,
|
|
"maturity_days": 2,
|
|
"min_view_for_ranking": 2000,
|
|
"video_shrink_minutes": 60,
|
|
"shrink_minutes": null,
|
|
// "auto" = 7 日有数据用 7,否则 1
|
|
"home_growth_days": "auto",
|
|
// 增速榜排序:Δ / (基线 + prior)。卡片上的百分比仍是 Δ / 基线。
|
|
"growth_rate_prior": 500,
|
|
},
|
|
}
|