chore: 初始化仓库(排除 adb 二进制文件以解决推送超时)

This commit is contained in:
2026-08-07 13:55:48 +08:00
commit bce48fc137
35 changed files with 6301 additions and 0 deletions
+43
View File
@@ -0,0 +1,43 @@
"""抖音养号命令行入口。
直接运行:python main.py
- 单设备跑一次养号,不走 web/调度
- 任务参数默认值在 tasks/douyin_nurture.py 顶部,可通过环境变量 WATCH_COUNT 覆盖视频数
web 管理后台请运行:python web_server.py
清理 STF 残留占用:python scripts/cleanup.py
目录结构:
config.py — 项目根配置(STF 地址/token、adb 路径、web 端口、数据目录)
bin/adb/ — adb.exe 及依赖 dll
core/ — 核心程序(STF 客户端、adb 工具、BaseWorker 基类、任务管理器)
tasks/ — 任务定义(每个任务一个 .py,自带参数默认值,继承 BaseTask + @register_task)
web/ — 前端页面(index.html)
data/ — 持久化数据(分组、任务计划)
scripts/ — 实用脚本
"""
import os
from core.stf_client import STFClient
from tasks import get_task_class
def run_once(serial=None, **overrides):
"""单设备跑一次养号(命令行入口,不启动 web)。
走任务框架:取 douyin_nurture 任务类 → create_worker → 直接 run(当前线程)。
overrides 可传任务参数覆盖默认值,如 run_once(watch_count=20, like_enabled=False)。
"""
stf = STFClient()
task_cls = get_task_class("douyin_nurture")
task = task_cls()
params = dict(overrides)
# 命令行友好:环境变量 WATCH_COUNT 覆盖视频数
if "WATCH_COUNT" in os.environ and "watch_count" not in params:
params["watch_count"] = int(os.environ["WATCH_COUNT"])
worker = task.create_worker(stf, serial, params)
worker.run() # 直接在当前线程跑,不起子线程
if __name__ == "__main__":
run_once()