抖音下载器快速上手指南:单条、批量、直播一次讲清
【免费下载链接】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
保存抖音视频常卡在两件事上:链接能打开,无水印源却拿不到;想存一个作者的作品,又得手动一条条点。douyin-downloader(抖音下载器)支持单条视频下载、整主页批量下载和直播录制,默认带进度展示、失败重试与去重。配好配置跑起来,文件会按作者和日期整理好。
🚀 三步跑起来
第一步,克隆项目:
git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader第二步,安装依赖(需要 Python 3.8+):
pip install -r requirements.txt第三步,首次运行:复制一份示例配置再启动,运行前把 config.yml 里的link换成你要下载的视频链接。
cp config.example.yml config.yml python run.py -c config.yml终端里会看到进度条推进,文件保存到Downloaded/目录。如果需要浏览器兜底或自动取 Cookie,另装playwright并执行python -m playwright install chromium即可。
📥 抖音下载器按场景选用
下载单条视频或图文
适用:手上有单个链接,想要无水印视频、封面或原声。怎么跑:把链接写进 config.yml 的link字段,或在命令后用-u直接追加。分享短链(v.douyin.com 开头)可以直接用,工具会自动解析。注意:程序会按码率自动挑清晰度最高的一版,若画质不满意,先看原片本身是不是低清。
批量下载作者主页
适用:想保存某作者的全部作品,或只要最近 N 条。怎么跑:link填https://www.douyin.com/user/...,mode写post,number.post填数量(0 为不限);加increase.post: true就只下新作品,不重复拉旧的。注意:如果翻页只抓到前 20 条就停住,保持browser_fallback.enabled: true,弹出浏览器窗口后手动完成验证,别马上关闭。
录制直播间
适用:想保留一整场直播。怎么跑:link填live.douyin.com/房间号,live段控制最长录制时长和空闲超时,0 表示录到主播下播。注意:该功能属实验性,产物是 FLV 文件;主播下播或按 Ctrl+C 时,已录部分会自动保留。
🔍 幕后是怎么做的
签名模拟。浏览器打开抖音时,请求链接上带着一串签名参数,服务端验过它才认为是正常浏览请求。项目在 utils/xbogus.py 里重新实现了这套签名算法,请求再配上真实浏览器的 User-Agent 一起发出。
频率控制。默认每秒只放行 2 次接口请求,还额外随机插入一小段停顿,让请求节奏不像机器那么整齐。这是不触发风控最直接的抓手。
Cookie 管理。Cookie 是登录状态的凭据,工具会打开浏览器,你扫码登录后它自动把关键项写进配置文件;过期了重跑一次获取命令即可,存取与校验逻辑在 auth/cookie_manager.py 里。
错误重试。单次请求失败会自动重试,每次间隔比上一次更长,避免对着服务器猛敲。重试仍失败就记为失败任务,其余任务照常进行,之后可以单独补。
⚙️ 值得调的参数
thread:并发下载数,默认 5,家用网络 3~5 足够。retry_times:失败重试次数,默认 3。number.post:每种模式的数量上限,0 为不限;建议先小数量验证再放大。increase.post:设为 true 只下新作品,需配合database: true。comments.enabled:默认关,想顺带抓评论时再开。
推荐起步配置:
thread: 5 retry_times: 3 mode: [post] number: post: 50 increase: post: true database: true🛠 出问题时先看这里
- 只抓到 20 条就停→ 主页翻页触发风控 → 开启
browser_fallback,在浏览器窗口完成验证后重跑。 - 大量失败或请求被 429 拒绝→ 频率过高或 Cookie 过期 → 重跑
python -m tools.cookie_fetcher --config config.yml更新 Cookie,同时调低thread。 - 已下载的文件不重新拉取→ 数据库加本地文件双重去重生效 → 删掉
dy_downloader.db里的对应记录和本地文件;只删文件就会触发重新下载。 - 进度条刷屏、看不清状态→ 日志未静默 → 保持
progress.quiet_logs: true。
⚖️ 使用边界
- 仅限个人学习研究,别拿去做商业用途。
- 尊重创作者版权,未获授权不转载、不分发。
- 遵守抖音服务条款与平台规则。
- 请求频率克制,长时间高压连续跑会提高风控概率。
- Cookie 相当于账号钥匙,配置文件不要外传。
📚 继续深入
想看代码,从 core/api_client.py 入手,它负责请求发送与签名拼装;命令行入口是run.py,参数解析在cli/main.py。仓库里的README.zh-CN.md有完整功能清单和配置项对照表,遇到问题先查。用法上的坑、接口失效的情况,欢迎到仓库 issue 区提单(记得把 Cookie 打码);修 bug、补文档的 PR 同样受欢迎。
选对工具、节奏放稳,把抖音内容存下来这件事,其实并不那么难。
【免费下载链接】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),仅供参考