抖音直播下载与主页批量下载:开源工具 douyin-downloader 配置与命令全解
【免费下载链接】douyin-downloaderA practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback support. 抖音批量下载工具,去水印,支持视频、图集、合集、音乐(原声)。项目地址: https://gitcode.com/GitHub_Trending/do/douyin-downloader
晚上十点,一场看了一个多小时的抖音直播下播了,手机录屏却只存下了三分钟——App 内录屏受系统限制,而你想把整场内容留档。这类需求用命令行工具更稳妥:douyin-downloader 是一个开源的抖音直播下载与抖音视频下载工具,直接抓取直播流并持续写入本地文件,主播下播、网络波动甚至手动 Ctrl+C 中断,已录制的部分都会被保留。它同时覆盖单条视频、图文、合集和作者主页批量场景,去水印、去重、重试都是默认行为。
🧰 工具能力:直播录制、主页批量与附加资源
| 能力 | 说明 |
|---|---|
| 直播录制 | live.douyin.com/{room_id}链接直接触发,自动挑选最高清 FLV 流落盘,中断后保留已录数据 |
| 主页批量下载 | 解析/user/链接,按 post / like / mix / music 模式批量拉取作品 |
| 单条内容 | 视频、图文、合集、音乐链接均可直接粘贴 |
| 附加资源 | 封面、背景音乐、头像、JSON 元数据,全部按配置项独立开关 |
| 去重与重试 | SQLite 加本地文件双重去重,指数退避重试,Rich 进度条展示 |
| 清晰度控制 | video_quality可选 original / highest / 1080p / 720p 等档位 |
适合内容运营、创作者留档、需要长期追踪某作者更新的人;也适合想批量归档自己收藏夹的用户。
📦 环境准备:克隆仓库并安装依赖
项目依赖集中在锁定的 requirements.txt 里,装一次即可运行,要求 Python 3.8 及以上:
git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt装完后把示例配置复制为正式配置,config.example.yml 中已经写好了全部默认值,复制后按需修改即可,不用从零手写 YAML:
cp config.example.yml config.yml若提示cp失败(比如文件名拼写不同),到仓库根目录确认示例文件是否存在;运行入口固定为python run.py。
🔑 Cookie 怎么配置:自动抓取与手动填写
Cookie 决定了接口请求的登录态,首次使用必须配置一次;之后遇到"登录态失效"提示或主页只能翻到 20 条作品,说明 Cookie 过期,重新执行同一流程即可。
推荐自动方式:脚本会弹出一个 Chromium 窗口,你在窗口里登录抖音,然后回到终端按 Enter,msToken、ttwid、odin_tt 等键值会自动写回 config.yml:
pip install playwright python -m playwright install chromium python -m tools.cookie_fetcher --config config.yml若首行提示模块缺失,说明前两条安装命令没跑完;若窗口里没登录就按了 Enter,抓到的是空 Cookie,删掉 config/cookies.json 重跑一次。
手动方式适合不想装浏览器内核的人:用日常浏览器登录抖音网页版,按 F12 打开开发者工具,在 Application → Cookies 下复制 msToken、ttwid、odin_tt、passport_csrf_token 四个键值,填进 config.yml 的cookies段保存。
🎬 场景实战:直播、单条视频与主页批量下载命令
三个场景共用一条入口命令,差异只在链接和配置项。
直播录制:把直播间链接通过-u传入,-p指定落盘目录。录制时长由 config.yml 中live.max_duration_seconds控制,0 表示一直录到主播下播:
python run.py -c config.yml -u "https://live.douyin.com/1234567890" -p ./Downloaded/成功后 FLV 文件落在Downloaded/{作者}/live/下可直接播放,同目录附带直播间元数据快照;回放类链接同样可被解析,可用于抖音直播回放保存。
单条视频:短视频、图文、合集链接都按此方式传入,v.douyin.com短链也支持,程序会先解析再下载:
python run.py -c config.yml -u "https://www.douyin.com/video/7341234567890123456" -p ./Downloaded/需要连封面和背景音乐一起保存时,把 config.yml 里的cover和music改为 true 再运行。
主页批量下载:-u传作者主页链接,-t指定并发。数量与模式在 config.yml 配置——mode: [post]表示下载其发布作品,number.post: 0为全量,写 50 则只取前 50 条:
python run.py -c config.yml -u "https://www.douyin.com/user/MS4wLjABAAAAxxxx" -p ./Downloaded/ -t 5结束后终端会输出成功 / 失败 / 跳过的汇总,跳过多为数据库判定已下载过,属正常去重。
📋 参数速查:run.py 常用命令行选项
| 参数 | 作用 | 示例 |
|---|---|---|
-c, --config | 指定配置文件,默认 config.yml | -c config.yml |
-u, --url | 追加下载链接,可重复传入 | -u "https://live.douyin.com/123" |
-p, --path | 指定下载目录 | -p ./Downloaded/ |
-t, --thread | 并发下载数 | -t 8 |
-v, --verbose | 显示 info 及以上日志,排查报错时用 | -v |
--hot-board N | 拉取热搜榜并导出 JSONL,N 为条数上限 | --hot-board 30 |
--search 关键词 | 按关键词搜索作品并导出 JSONL | --search 猫咪 |
--version | 显示版本号 | --version |
更多配置项(时间过滤、评论采集、完成通知等)可参考 README 中的关键配置项一节。
⚠️ 避坑与合规:频率控制与使用边界
- 频率:
rate_limit默认 2 请求/秒、thread默认 5,大批量任务不要盲目拉高,频繁请求会触发风控直接 403,重试也无法绕过。 - 翻页被限(只抓到 20 条):保持
browser_fallback.enabled: true且headless: false,浏览器弹窗出现后手动完成验证码再关窗。 - 配置位置:config.yml 位于项目根目录,改前建议备份;Cookie 失效时重跑 cookie_fetcher 是最快的恢复方式。
- 合规:下载内容仅限个人学习与研究用途,遵守抖音平台规则,勿侵犯创作者版权与他人隐私。
douyin-downloader 把直播录制、主页批量下载、去重重试收进一条命令,配一次 Cookie 即可长期复用。如果它解决了你的留档需求,欢迎到仓库点一个 star,或转发给同样需要批量保存抖音内容的同事。
【免费下载链接】douyin-downloaderA practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback support. 抖音批量下载工具,去水印,支持视频、图集、合集、音乐(原声)。项目地址: https://gitcode.com/GitHub_Trending/do/douyin-downloader
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考