抖音视频采集下载器
作者:十一AGI(认知圈) | 版权所有 © 2026 十一AGI
抖音主页视频批量采集 + 下载 + 统一仪表盘。配置驱动、零依赖核心、自动检测 web 封顶缺口。 不含任何个人账号数据与本地路径,可直接压缩分享给他人。
特性
- 配置驱动:账号写在
config.toml,无硬编码、无个人信息残留。 - 零依赖核心:采集 / 下载 / 仪表盘 全部用 Python 标准库,无需
pip install。 - 自动续传:已下载的 mp4 自动跳过,断点可重跑。
- web 封顶检测:填写
declared_count(主页声明视频数)后,仪表盘自动算出缺口并标注「疑似 web 封顶」。 - 统一仪表盘:一个 HTML 汇总所有账号的采集数 / 缺口 / 最后运行时间。
安装与初始化
# 仅「扫码登录」这一步需要 Playwright 驱动(pip 安装轻量包即可)
pip install playwright
# 扫码会优先复用你系统已装的 Chrome/Edge,无需额外下载浏览器
# 可选:一键自检环境(缺什么就打印什么修复命令)
python scripts/check_env.py
# 一条命令引导初始化:自动装环境 + 扫码登录 + 填账号主页
python setup.py
# 想手动也行:cp config.example.toml config.toml 后自行编辑 [[accounts]] 段
使用
# 首次初始化(复制配置 + 填账号 + 检测 cookie 一步到位)
python setup.py
# 首次:打开浏览器扫码登录(生成 dy_profile/cookies.json,扫码成功自动保存,无需回车)
python run.py login
# 日常:一键采集 + 下载 + 更新状态 + 生成索引(推荐)
python run.py recheck --all
# 只采集某个账号(name 取 config.toml 中 [[accounts]].name 的值)
python run.py recheck --name 你的账号昵称
# 查看各账号状态与缺口
python run.py status
# 生成统一仪表盘 HTML(在 output/dashboard.html)
python run.py dashboard
目录结构
douyin-material-intel/
├── config.example.toml # 配置模板(复制为 config.toml 填写)
├── setup.py # 首次初始化引导(复制配置+填账号+检测 cookie)
├── run.py # 统一 CLI
├── login.py # 可选:扫码登录(需 playwright)
├── requirements.txt
├── SKILL.md # 作为 skill 的元信息
├── README.md
├── scripts/
│ └── check_env.py # 环境自检(检查 Python/Playwright/浏览器/网络)
├── core/
│ ├── cookie.py # 读取登录态 + 健康探针
│ ├── state.py # 每账号状态文件
│ ├── collector.py # API 翻页采集 + 封顶标记
│ ├── downloader.py # 按列表下载 + 去重续传
│ ├── dashboard.py # 统一仪表盘 HTML
│ └── browser.py # 每账号视频索引 HTML
├── dy_profile/ # 登录态(login 生成,不入库)
├── downloads/ # 视频保存(运行生成)
└── output/ # 列表 JSON / 状态 / 索引(运行生成)
关于「web 封顶」
抖音 web 接口(aweme/post)对部分账号有服务端硬上限,例如主页显示 515 条,
web 最多只能翻到约 108 条。这是平台限制,非工具 bug,APP 端才能拿到完整数。
本工具会在 declared_count 与采集数不符时,于仪表盘明确标注「疑似 web 封顶,缺口 N」。
微信扫一扫