5分钟下载整个抖音博主主页:去水印、增量抓取、自动归档一次搞定
【免费下载链接】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
想把某位博主的主页视频全部存下来?手动逐条另存、去水印、重命名,100 条作品折腾 3 小时起步。用 douyin-downloader 做抖音批量下载,整个流程压到 5 分钟:贴一个主页链接,无水印原片、封面、原声和 JSON 元数据自动落盘,还帮你归档去重。
3 条命令跑通第一个抖音批量下载
装依赖 + 复制配置模板
git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt cp config.example.yml config.yml需要"浏览器兜底"(翻页被限制时自动开窗过验证码)的话,再补一句pip install playwright并执行python -m playwright install chromium。
一键获取 Cookie(只做一次)
python -m tools.cookie_fetcher --config config.yml自动弹出浏览器,扫码登录后回终端按回车,Cookie 就写进配置了,全程不到 1 分钟,之后一直有效。实现见 tools/cookie_fetcher.py。
写入主页链接,执行批量下载
编辑config.yml,只需动这几行:
link: - https://www.douyin.com/user/MS4wLjABxxxx # 换成目标博主主页链接 mode: - post # 抓取主页发布的全部作品 number: post: 0 # 0 表示不限量 thread: 5 # 5 个任务并发运行:
python run.py -c config.yml终端会出现实时进度条,每条作品的下载状态一目了然。偏好图形界面的话,同后端还有桌面版 Douzy,粘贴链接即可开始:
进阶配置:3 处改动省掉以后所有重复劳动
开启增量下载,只抓新增内容
increase: post: true # 只下载新发布作品 database: true # 增量依赖 SQLite 记录数据库会记住每个已下载的作品 ID,再次运行时自动跳过。追更场景下,第二次跑一次主页,通常只多下几条新视频。
多模式抓取:视频、点赞、合集、原声一次抓全
mode: - post # 发布的视频/图集 - like # 点赞过的作品 - mix # 创建的全部合集 - music # 使用过的原声音乐各模式的抓取策略独立实现在 core/user_modes/,跨模式自动去重:同一条作品既出现在发布列表又出现在合集中,只落盘一次。
归档与命名:下载完直接是"带索引"的仓库
文件默认按作者昵称/模式/日期_标题_作品ID归档,命名模板可在filename_template里自定义。每条作品可同时附带高清封面、原声音乐和一份完整 JSON(标题、发布时间、播放/点赞/评论数),后续检索、剪辑不用翻历史。
原理速览:一条流水线走完整个下载
把整个过程想象成打包厂的传送带:扫码站先识别你丢进来的包裹是单条视频、主页还是合集(core/url_parser.py 做链接分类);分拣机逐条拉取作品详情;拣货员按"无水印 + 最高码率"的标准挑箱子,而不是货架上有什么拿什么;传送带 5 条并发出货,失败的箱子自动回流重试 3 次(指数退避 1s/2s/5s);最后入库环节按作者/模式/日期_标题_ID上架,并在台账(SQLite)上记下每件箱子的编号——下次同编号的包裹进来,直接放行不重复打包。
效率对比:手动工作台 vs 一条命令
按"整理 100 条作品"这个口径算账:
| 维度 | 手动逐条处理 | douyin-downloader |
|---|---|---|
| 耗时 | 约 3 小时 | 约 5~10 分钟 |
| 水印 | 另找工具逐条处理 | 自动选无水印源 |
| 画质 | 常拿到压缩版 | 自动挑最高码率档位 |
| 命名 | 随机名、乱码 | 日期_标题_作品ID |
| 博主更新后 | 全部重下 | 增量只抓新增 |
有素材剪辑岗的真实使用口径:同时追 20 个竞品主页,每天 3.5 小时的收集工作压缩到 20 分钟以内,增量模式保证每天只跑新内容,重复下载基本归零。
下载完成后自查这 5 项
- 全量首跑是否拿到全部作品(
number: 0不限量)? - 抽 2~3 条确认无水印,且是可用档里最高画质?
- 再跑一次,终端是否显示跳过已下载项(增量生效)?
- 目录是否为
作者/模式/日期_标题_ID,命名无乱码? - 每条作品的封面、音乐、JSON 元数据是否齐全(按你开启的附带项)?
有项不达标,优先查对应配置;仍失败看dy_downloader.db(见 storage/database.py)里对应记录的文件路径是否落空。
3 个真实使用中的疑问
Q1:只想要最近一个月的作品,怎么设?加时间过滤,只抓区间内发布的:
start_time: 2026-08-01 # 起始日期,早于此的跳过 end_time: "" # 留空表示不设上限Q2:只抓到 20 条左右就停了,是不是出 bug 了?大概率是翻页被风控。确认browser_fallback.enabled: true且headless: false,运行时弹出的浏览器窗口里手动过完验证码,别急着关,等它自己继续翻页。
Q3:能不能直接指定 1080p,别管最高档?可以,把video_quality从"highest"改成"1080p"(也支持 1440p/720p/540p 等),匹配不到时自动降到最接近的可用档。
完整配置项和更多场景(评论采集、直播录制、API 服务模式)见 README.zh-CN.md。
现在就跑起来
复制一位你常看博主的主页链接进config.yml,第一条命令跑通后,批量收集就从"每天 3 小时"变成"每天 5 分钟"。
工具仅供技术研究、学习交流与个人数据管理,请在合法合规的前提下使用。
【免费下载链接】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),仅供参考