抖音批量下载从入门到精通:douyin-downloader 完整实战手册
抖音批量下载从入门到精通: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 是一款开源抖音批量下载工具,主打去水印、多类型内容下载与作者主页批量采集。它要解决的事情很具体:想收藏的视频总是带着水印、一个博主几百条作品得逐条手动保存、需要定期更新的内容库靠手工根本维护不过来。这篇文章以真实使用视角,带你从安装、最小配置到进阶调优完整跑通一遍。
一个剪素材剪到崩溃的下午
先讲个身边的事。做短视频运营的老周接了个活儿:一周内要拆解 20 位同赛道博主的内容,每位至少 80 条作品,用于分析选题和拍摄节奏。
他原来的做法是这样的:打开网页、点进视频、等播放、右键另存为……存下来的还带着水印,画面中央一个抖动的 ID 横在关键字幕上。一天下来,他大概能"手工"存下 30 条,手指发酸,眼冒金星,而且文件名全是"抖音_12345"这种无法辨认的乱码。按这个速度,光收集素材就要 20 个工作日,比选题本身还累。
老周的困境可以浓缩成三句话:
- 慢:单条单条操作,一小时撑死存十几条;
- 脏:大部分在线工具下载出来带水印,画质还被打折;
- 乱:文件名无规则、元数据缺失,素材进库之后找不到、对不上号。
如果你也体会过其中任何一条,douyin-downloader 大概率能省下你 90% 的重复劳动。
为什么我不推荐"在线解析网站"和"浏览器插件"
在正式介绍它之前,先聊聊市面上常见的替代方案,避免你走弯路。
在线解析网站,比如各种"抖音去水印"网页:优点是零安装、打开就用;缺点是每下载一条都要复制链接、切网页、点按钮,批量场景下操作成本反而更高,而且隐私上等于把链接全交给第三方站点,部分站点还会在结果里夹带推广或诱导下载。
浏览器插件:体验比网页好一些,但通常只支持"当前页面"的单条下载,很难覆盖整个博主主页,插件商店里同类工具的维护频率和更新速度也参差不齐。
自己写爬虫脚本:自由度最高,但抖音的接口签名、风控策略变化很快,维护成本极高,初学者大概率卡在第一步就放弃了。
douyin-downloader 走的是一条中间路线:命令行 + 配置文件驱动,把"解析、去重、下载、重试、兜底"这些繁琐环节全部封装好。你只需要给它一个链接和几个参数,剩下的它自己处理。它不像脚本那样需要你懂签名算法,也比网页工具更适合规模化、可重复的下载任务。
先花 30 秒看清它能做什么
在动手之前,先快速过一遍能力清单,方便你对号入座:
| 能力 | 说明 |
|---|---|
| 内容类型 | 视频、图文、合集、音乐、直播回放、收藏夹 |
| 链接形态 | 支持/video、/note、/collection、/music、/user、短链自动解析 |
| 批量模式 | 作者主页作品、点赞、合集、音乐、收藏夹全量或限量 |
| 画质策略 | 自动挑选无水印源,按码率数组自动选最高清 |
| 去重机制 | SQLite 数据库 + 本地文件双重去重,支持增量下载 |
| 附加资源 | 封面、原声、头像、JSON 元数据、评论数据、视频转写 |
| 稳定性 | 失败指数退避重试、接口受限时浏览器兜底、完整性校验 |
| 扩展能力 | REST API 服务、热搜榜导出、关键词搜索、完成通知推送 |
上图是它在命令行里批量下载时的样子:每个任务独立进度条,完成度一目了然。老周那个"一天 30 条"的活,换成它大概是十几分钟的事。
从零跑通第一次下载
下面按步骤走一遍,照做即可。
第一步:安装依赖
要求 Python 3.8 以上,Windows、macOS、Linux 都支持。
git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt如果之后需要"浏览器兜底"或"自动获取 Cookie"这两个功能,再补装 Playwright:
pip install playwright python -m playwright install chromium第二步:获取 Cookie
抖音接口需要登录态,第一次使用前得配置 Cookie。推荐用工具自动获取:
cp config.example.yml config.yml python -m tools.cookie_fetcher --config config.yml命令会拉起一个浏览器窗口,你在里面正常登录抖音,登录完成后回到终端按回车,Cookie 会被自动写入配置文件。
第三步:写最小可用配置
编辑config.yml,最简版本长这样:
link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx # 要下载的博主主页链接 path: ./Downloaded/ # 文件保存目录 mode: - post # 下载博主"作品"列表 number: post: 50 # 最多下载 50 条,0 表示不限制 thread: 5 # 5 个任务并发下载 retry_times: 3 # 失败自动重试 3 次 database: true # 开启 SQLite 去重 cookies: msToken: "" # cookie_fetcher 会自动填入 ttwid: "YOUR_TTWID"每行都做了注释,核心就两个意思:下谁的(link)和怎么下(mode / number / thread)。
第四步:运行并查看结果
python run.py -c config.yml下载完成后,在Downloaded/目录下你会看到按作者名、再按模式分层的目录结构:
Downloaded/ ├── download_manifest.jsonl # 全局下载清单 └── 博主昵称/ └── post/ └── 2026-04-24_作品标题_awemeid/ ├── 视频.mp4 # 无水印视频 ├── 封面.jpg ├── 原声.mp3 └── 元数据.json # 标题、点赞数、评论数等完整信息每个作品一个文件夹,命名自带日期和标题,找素材时再也不用靠记忆翻目录了。
让它更快更稳的进阶设置
跑通基础流程之后,这几个配置项能显著提升体验。
1. 只下新内容(增量下载)
追更博主时,每次都全量下载既慢又浪费。开启增量后,工具会对照数据库只下载新增作品:
increase: post: true # 只下载上次之后的新作品2. 控制并发与重试
thread一般设 5–8,太大会触发平台限流,太小浪费带宽;retry_times设 3–5,配合指数退避(1 秒、2 秒、5 秒)能明显提高成功率;- 如果网络环境特殊,
proxy: "http://127.0.0.1:7890"可以为 API 请求和媒体下载统一走代理。
3. 自定义命名规则
filename_template: "{date}_{author}_{title}_{id}" # 可用 {date} {author} {title} {id} {like_count} 等变量 author_dir: "nickname_uid" # 作者目录用 昵称_uid,直观且不重名 folderstyle: true # 每个作品独立子目录4. 浏览器兜底
翻页时如果遇到验证码风控,工具会自动切换到浏览器模式,弹出一个真实浏览器窗口,你手动过一下验证码再关掉即可:
browser_fallback: enabled: true headless: false # 非无头模式,方便人工验证5. 下载完自动通知
长任务挂在服务器上时,可以配置完成推送(支持 Bark / Telegram / Webhook),下载结束手机直接收到提醒,不用一直盯着终端。
新手最容易踩的四个坑
坑一:只能抓到 20 条作品
这是翻页风控的典型表现,不是工具坏了。确认browser_fallback.enabled: true且headless: false,验证弹窗出现后手动完成,别急着关窗口。
坑二:提示 Cookie 失效
登录态过期是常态,重新跑一次python -m tools.cookie_fetcher --config config.yml刷新即可。
坑三:想重新下载却发现被跳过
工具靠"数据库记录 + 本地文件"双重去重,想重下某个作品要同时清掉两边:删除对应本地文件夹,再用sqlite3删掉数据库里对应记录。
坑四:视频转写(transcript)没生效
依次检查:transcript.enabled是否为 true、下载的是不是视频(图文不转写)、OPENAI_API_KEY是否有效、response_formats是否包含txt或json。逐项排查基本都能定位。
写在最后:怎么用好它
回顾一下这趟旅程:你从"手工逐条下载"换成了"一条命令批量拉取",从"水印+乱码文件名"换成了"无水印+结构化元数据",从"每周手动维护"换成了"增量追更"。同样的素材收集需求,时间成本从小时级压缩到分钟级,这就是这个工具最实在的价值。
行动清单,按顺序来就行:
- 克隆仓库并安装依赖;
- 用 cookie_fetcher 完成首次登录配置;
- 用最小配置跑通第一个作者主页;
- 按自己的习惯调整命名、并发和增量;
- 需要追更或自动化的场景,配合定时任务使用。
最后说一句重要的话: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
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
