3个核心能力看懂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,一款主打抖音批量下载与去水印的下载器,单条链接、主页整页都能抓,还能自动挑最高清版本,全程带进度、重试和去重。
一个工具,能装下多少种下载场景
动手之前,先看清它的能力边界。下表把最常见的几类需求列了出来:
| 你想做的事 | 给它的链接 | 它返回的结果 |
|---|---|---|
| 存一条喜欢的视频 | 视频分享短链或完整链接 | 无水印最高清 mp4 |
| 保存图文笔记 | /note/ 或 /gallery/ 链接 | 原图画集 |
| 搬空一个合集 | /collection/ 链接 | 合集内全部视频 |
| 单独下载背景音乐 | /music/ 链接 | 原声文件 |
| 批量抓博主主页 | /user/xxx 主页链接 | 作品/点赞/合集/音乐四类 |
| 录制一场直播 | live.douyin.com/房间号 | FLV 直播文件 |
像 v.douyin.com 这类短链会被自动解析成真实地址,不用手动去浏览器里跳转提取,日常用起来很顺手。
第一次下载:十分钟把流程跑通
环境只需要 Python 3.8 以上和 pip,四步就能跑通:
# 1. 拉取项目并安装依赖 git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt # 2. 生成自己的配置文件 cp config.example.yml config.yml # 3. 自动获取 Cookie(扫码登录后回车,程序自动写入) python -m tools.cookie_fetcher --config config.yml # 4. 开始下载 python run.py -c config.yml对应的最小配置长这样:
link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx path: ./Downloaded/ mode: - post number: post: 50 thread: 5 database: true这段配置的意思是:抓取这个主页最新的 50 条发布作品,用 5 个线程并发下载,文件落到 ./Downloaded/,同时开启数据库去重。
核心能力一:无水印与最高清是怎么自动挑出来的
它能做什么。抖音的接口里,同一个视频通常同时存在带水印和无水印两种源,画质也有多个码率档位。douyin-downloader 的处理逻辑是:优先挑选无水印源,再遍历 video.bit_rate 数组自动选中最高码率的那一档,视频和实况图都适用。
怎么设置。这一项几乎不用动手——它是默认行为。多数情况下你直接下载,拿到的就是当前可用的最佳画质。
真实效果。保存下来的就是服务器上的原始文件,分辨率、帧率、音质都不经过二次转码,比"在线解析→下载→再压缩"的链路干净得多,尤其适合需要反复剪辑引用的素材。
核心能力二:主页批量下载,还能只追增量
它能做什么。把任意博主的主页链接丢进去,通过 mode 选择要抓的类型:post 是发布作品,like 是公开点赞,mix 是合集,music 是音乐。四种模式可以同时开,同一条视频跨模式出现时会自动去重,不会重复下载。
怎么设置。批量下载的克制感来自三个旋钮——数量、时间、增量:
link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx mode: - post - like number: post: 0 # 0 表示全量,不设上限 like: 30 # 点赞只取最近 30 条 start_time: "2025-01-01" # 只下载 2025 年之后的内容 end_time: "" increase: post: true # 增量模式:只抓数据库里没有的新作品 database: true # 增量依赖数据库记录真实效果。追更一个日更博主时,把 increase.post 打开,每次运行只补新增的几条,不重扫、不重下,长期跟踪的成本几乎为零。
核心能力三:双重去重加自动归档,文件不再乱
它能做什么。重复下载是整理素材时最隐形的时间开销。这个工具用两道闸门挡住重复:一道是 SQLite 数据库记录(默认生成 dy_downloader.db),一道是扫描本地文件名里的 aweme_id。两道都命中才跳过,文件被删了会重新补下,记录清了也能靠已有文件识别,机制相当扎实。
怎么设置。目录结构是自动的:作者名作一级目录,post/like/mix/music 作二级目录,每个作品再按"日期_标题_aweme_id"建独立文件夹,视频、封面、音乐、JSON 元数据分开存放:
Downloaded/ └── 作者名/ ├── post/ │ └── 2025-06-07_作品标题_123456789/ │ ├── video.mp4 │ ├── cover.jpg │ ├── music.mp3 │ └── data.json ├── like/ ├── mix/ └── music/真实效果。素材库天然按作者、类型、日期三级组织,找东西不用翻聊天记录,也不会出现"这个视频我好像下过"的尴尬。
进阶玩法:从下载器升级成素材工作台
基础下载跑顺之后,下面这些能力值得逐个解锁:
| 功能 | 一句话说明 | 入口 |
|---|---|---|
| 直播录制 | 录到主播下播或手动停止,已录字节会保留 | 直播链接 + live 配置 |
| 评论采集 | 按作品抓评论,可含二级回复,输出 JSON | comments 配置 |
| 热搜榜导出 | 拉取抖音热搜前 N 条,存成 JSONL | --hot-board 30 |
| 关键词搜索 | 按关键词搜作品并导出 JSONL | --search "关键词" |
| REST API | 以服务模式运行,提交 URL 异步下载 | --serve --serve-port 8000 |
| 完成通知 | 下载完推送到 Bark / Telegram / Webhook | notifications 配置 |
| 视频转写 | 可选调用接口生成字幕文本 | transcript 配置 |
比如把下载器常驻成服务,脚本往 /api/v1/download 丢一条 URL,它就在后台排队处理,很适合接进自己的自动化流程;评论采集的结果也可以直接喂给数据分析脚本,做内容趋势观察。
命令行还是桌面版,怎么选
同一套后端提供了两种形态,按你的习惯挑:
| 维度 | 命令行模式 | 桌面版 Douzy |
|---|---|---|
| 适合人群 | 技术用户、脚本爱好者 | 想点鼠标就完成的普通用户 |
| 操作方式 | 配置文件驱动 | 粘贴链接、勾选类型即可 |
| 批量与增量 | 完整支持 | 完整支持 |
| 任务可视化 | Rich 进度条 | 任务中心逐条状态与筛选 |
| 自动化能力 | 可以,还能跑 Docker | 以交互操作为主 |
命令行模式在终端里跑起来的画面大致是这样:任务数、线程数、保存路径一目了然,每条作品的状态实时刷新。
命令行模式下的运行界面:任务、线程与保存路径清晰可见
桌面版则把关注同步、任务中心、历史筛选搬进了图形界面,左侧导航、右侧粘贴链接,适合不想碰命令行的日常用户。
桌面版 Douzy:粘贴链接、选择下载内容类型即可开始批量下载
四个最容易踩的坑,提前帮你排掉
- 主页只能抓到 20 条。这是翻页风控,不是 bug。确保 browser_fallback.enabled 为 true 且 headless 为 false,弹出浏览器后手动完成一次验证,别急着关窗口。
- Cookie 失效后下载全失败。不要硬删配置重来,直接再跑一次 python -m tools.cookie_fetcher --config config.yml。
- 想重新下载,只删数据库没用。程序会同时核对本地文件,正确姿势是"本地文件 + 数据库记录"一起清理。
- 增量下载不生效。increase 系列开关依赖 database: true,先把数据库打开。
下一步:照着清单动手
- 拉取项目、安装依赖(上面四步命令可直接复用);
- 跑一次 cookie_fetcher 完成登录态配置;
- 用一条短链试下载,确认无水印、最高清;
- 换成博主主页链接,设好 number 和 increase;
- 按需解锁进阶功能(直播、评论、通知、转写);
- 常跑的任务可以打包成 Docker 镜像挂在后台。
最后多说一句:工具解决的是"保存与整理"的技术问题,版权与平台规则仍是使用者的责任。请把下载内容用于个人学习、研究或合理引用,尊重创作者权益,也别给平台接口施加不必要压力。把工具用顺了,你的素材库自然会越来越整齐。
【免费下载链接】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),仅供参考