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
douyin-downloader 是一款面向命令行的抖音去水印下载工具,能把单条作品、作者主页的全部作品和长合集干净地存进本地目录。它同时提供历史去重、增量追更和风控兜底,适合想批量保存抖音内容、又不想装图形界面的用户。
它解决什么问题
想把一个博主的作品完整留在本地,手动逐条保存既慢又容易漏,而多数在线渠道只能拿到带水印的副本,合集和原声更是经常下不动。douyin-downloader 把这类需求压成一份配置加一条命令:通过接口直连抓取无水印源,用 SQLite 记录已下载内容,跑第二遍时只补新增的部分。
能力全景:能做什么,卡在哪里
| 能力项 | 说明 / 限制 |
|---|---|
| 单条作品下载 | 支持视频、图文,v.douyin.com短链自动解析,输出无水印文件 |
| 主页批量下载 | mode可组合post、like、mix、music,按作者主页整站抓取 |
| 历史去重 | SQLite 记录下载历史,重复运行自动跳过,只补新作品 |
| 稳定性机制 | 并发下载、指数退避重试,触发风控时走浏览器兜底 |
| 点赞 / 收藏夹 | 受平台风控限制,CLI 无法直接拉取,需换用桌面版 |
| 直播录制 | HLS 直播源只保存 playlist,需 ffmpeg 二次处理才能得到成片 |
能力边界由接口风控决定:多数公开作品与合集能稳定拿到,涉及点赞、收藏等私密列表时接口会直接拒绝,此时换桌面端是唯一出路。
从零跑通:安装 → 鉴权 → 出片
步骤 1 · 装好依赖
先把仓库拉到本地并安装依赖,终端没有红色报错就说明依赖齐了:
git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt步骤 2 · 扫码鉴权
复制出配置文件,再运行取 Cookie 的小工具;浏览器弹出后扫码登录一次抖音,回到终端按回车,Cookie 就会写进config.yml,看到"登录成功"即算通过:
cp config.example.yml config.yml python -m tools.cookie_fetcher --config config.yml步骤 3 · 跑任务出片
把要保存的链接填进config.yml的link,然后执行:
python run.py -c config.yml任务结束后,Downloaded/下会按「作者 / 类型 / 日期」分层铺开对应的作品文件夹,文件落盘就说明成功。
典型用法:按需求选配置
全量备份:把作者主页整个搬回来
把link指向博主主页,mode里保留post,number.post填0表示不限量,运行后Downloaded/作者/post/下会集齐全部作品:
link: - https://www.douyin.com/user/某博主sec_uid mode: [post] number: post: 0合集走类似的路子:把link换成合集页链接,number.mix设为0,整系列一次下完,不用逐条点。
增量追更:只补新作品
隔几天再跑同一个配置,靠数据库跳过已下载的内容,只有新增部分落盘。两个开关配合生效:
increase: post: true database: true精细筛选:只取想要的部分
按时间切分作品,只保留某月之后的更新,start_time给下限、end_time留空即可:
start_time: "2026-01-01" end_time: ""只要背景音乐省空间,把视频和封面关掉、把原声打开,目录里就会只剩 mp3:
video: false music: true cover: false性能与排错速查
关键调参
默认值跑不动时,先动这几个字段:
| 参数 | 作用 |
|---|---|
thread | 并发下载数,被限流就降到 2~3 |
retry_times | 单条失败后的重试次数 |
proxy | 变慢或被限流时填代理地址 |
database | 去重与增量都依赖这份数据库 |
video_quality | 画质档位,original可探测原画 |
高频故障
| 现象 | 原因 | 解法 |
|---|---|---|
| 主页抓到二十条左右就停 | 翻页触发风控 | browser_fallback.enabled: true、headless: false,浏览器弹出后手动过验证再关窗 |
| 提示登录态失效 | 抖音登录有时效,Cookie 过期 | 重跑python -m tools.cookie_fetcher --config config.yml刷新 |
| 个别作品反复失败 | 作品被删或设私密 | 属正常现象,纯限流会按retry_times自动重试 |
| 整体变慢或超时 | 网络不稳或被限流 | 给proxy填代理,或临时调小thread,稍后再跑 |
延伸阅读与合规提示
完整参数清单在 config.example.yml 里逐项有注释,运行原理看 core/ 目录,参数含义可对照 README.zh-CN.md。把config.yml的link换成要保存的目标,下一次运行结束文件就会落在Downloaded/中。
本文仅供个人学习与研究,请尊重创作者版权,不二次传播、不商用。
【免费下载链接】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),仅供参考