抖音无水印下载一篇讲透:从单条视频到作者主页批量下载,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
深夜存视频的人,都懂这种憋屈
先讲个真实小故事。我有个做设计的朋友小周,刷到一条构图绝佳的短视频,想存下来当灵感素材。他先录屏——好家伙,右下角水印晃得人眼花;又找了个在线解析网站——画质被压成了马赛克;最后折腾到快凌晨,总算"存"下来了,却是三条内容、两种画质、乱糟糟躺在相册里的三份文件。
你是不是也干过类似的事?复制链接、切网页、粘贴、等解析、再下载……一套流程走下来,水印、压缩、命名混乱总得占一样。
今天要聊的这个开源项目 douyin-downloader,就是冲着这些憋屈来的:一款免费、去水印、支持批量处理的抖音下载工具。它能存单条视频,也能把一个博主的主页、合集、音乐、甚至直播一锅端,还自带去重和进度展示。往下看,你会知道它值不值得进你的工具箱。
先花一分钟认识这位"搬运工"
一句话:douyin-downloader 是一个面向实用场景的抖音批量下载工具,能帮你把视频、图文、合集、音乐、收藏夹以及直播内容,以无水印、尽量高清的方式保存到本地。
它解决的痛点是老三样——去水印、保画质、省操作;适合的人群也很清晰:偶尔存视频的普通用户、需要批量收集素材的内容创作者、以及想把它接进自己自动化流程里的开发者。
同一条视频,两种过法
与其背功能清单,不如看对照。同样是"保存一个博主最近 50 条作品":
没有它的时候
- 逐条打开视频,挨个复制短链
- 打开网页版解析工具,粘贴、等待、下载
- 发现清晰度缩水,画质被"二次加工"
- 文件名是乱码或者纯数字,回头根本找不到是哪条
有了它之后
- 把作者主页链接贴进配置文件
- 运行一条命令,程序自动翻页拉取全部作品
- 自动挑选无水印、码率最高的视频源
- 按"作者名 / 作品类型 / 日期_标题"自动建文件夹,视频、封面、音乐、元数据各归其位
差别在哪里?一个是你追着文件跑,一个是它替你把活干完还收拾好现场。
三类人,三种打开方式
同样是这个工具,不同身份的人用法完全不一样。
普通用户:粘贴链接,剩下的交给进度条
如果你只想偶尔存几条视频,最省事的路径是命令行 + 配置。把链接写进config.yml,运行python run.py -c config.yml,剩下的就是看进度条走完。它默认 5 线程并发、失败自动重试(指数退避),断网重试、下载到一半的文件损坏了也会自动校验补齐,基本不用人守着。
如果你更习惯点鼠标,项目还提供基于同一套后端的桌面版客户端——粘贴链接即刻开始,同步关注列表,还能可视化跟踪每个任务的下载进度。桌面版目前处于内测阶段,可从项目 Releases 页面下载安装包。
进阶玩家:批量、合集、音乐、直播、评论全都要
这是 douyin-downloader 最出彩的地方:它不止能下"一条视频"。
- 作者主页批量下载:把
/user/xxx主页链接放进配置,mode里写post(作品)、like(点赞)、mix(合集)、music(音乐),想下哪几类就开哪几类,number控制数量(0 表示全量)。 - 合集与音乐:单独的合集链接、音乐链接都能识别。音乐下载默认优先原声文件,缺失时自动回退到该音乐下的首条作品。
- 直播录制:贴一个
live.douyin.com/{房间号}链接,选择清晰度就能录 FLV 流;主播下播、网络空闲或中途中断时,已录制的字节会被保留下来,不会白忙一场。 - 评论采集:在配置里打开
comments.enabled,每个作品会额外生成一份*_comments.json,点赞数、发布时间这些元数据一并落盘。 - 智能去重:数据库 + 本地文件双重检查,同一个作品不管在哪个模式下遇到,都不会重复下载;跨模式(作品、点赞、合集、音乐)自动去重。
批量下载时,终端会实时滚动每个文件的进度和状态,谁成功、谁跳过、谁失败一目了然。
开发者:当成一个现成的下载服务来用
如果你不只是想下载,还想把它接进自己的工具链,它留了几扇门:
- REST API 服务模式:
python run.py --serve --serve-port 8000,提供一个可提交下载任务的 HTTP 接口,返回 job 状态,方便嵌入你自己的系统。 - 热搜榜与关键词搜索:
--hot-board 30拉取抖音热搜榜前 30 条,--search "关键词"按关键词搜索作品,结果都以 JSONL 格式落盘,方便后续做数据分析。 - 完成通知:下载完成后可推送到 Bark、Telegram 或企业微信/飞书/钉钉的 Webhook,长任务跑完自动告诉你。
5 分钟实战:跟着走一遍下载流程
纸上谈兵没意思,我们直接跑一遍"保存某博主最近 50 条作品"的完整流程。
第一步,装环境。项目要求 Python 3.8+,三个平台都能跑:
git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt第二步,生成配置文件。项目自带的config.example.yml就是一份完整注释模板,复制一份即可:
cp config.example.yml config.yml第三步,搞定 Cookie。抖音需要登录态,这一步最省心的是用自动获取:
python -m tools.cookie_fetcher --config config.yml命令会拉起浏览器,你扫码登录抖音后回到终端按 Enter,程序会自动把 Cookie 写进配置。
第四步,填入链接和下载范围。编辑config.yml:
link: - https://www.douyin.com/user/你的作者主页链接 path: ./Downloaded/ mode: - post # 发布作品 - like # 点赞作品(可选) - mix # 合集作品(可选) - music # 音乐作品(可选) number: post: 50 # 最多下载 50 条,0 表示不限制 like: 0第五步,运行并验收。
python run.py -c config.yml跑完之后,去Downloaded/目录看看,文件已经被整理得明明白白:
Downloaded/ └── 作者名/ ├── post/ │ └── 2024-02-07_作品标题_aweme_id/ │ ├── video.mp4 # 无水印视频 │ ├── cover.jpg # 封面 │ ├── music.mp3 # 背景音乐 │ └── data.json # 元数据 └── like/ mix/ music/ # 其他模式按需生成如果你只想下单个视频,连配置文件都不用改,直接命令行追加:
python run.py -c config.yml -u "https://www.douyin.com/video/视频ID" -p ./Downloaded最容易翻车的四个地方,提前帮你排雷
工具再好,用不对也会栽跟头。这几个坑我替你提前踩过了。
只抓到 20 条作品就停了?这是翻页风控的典型现象。先在配置里确认浏览器兜底是开着的:
browser_fallback: enabled: true headless: false max_scrolls: 240浏览器弹窗出现后,记得手动完成验证,不要一弹出来就关窗口,否则翻页还是会被卡住。
进度条刷屏,日志被淹没?默认配置里progress.quiet_logs: true就是用来压噪的,正常下载保持开启即可。调试时才临时加--show-warnings或-v看详细日志。
Cookie 又失效了?抖音的登录态确实会过期,这是平台策略,不是工具的问题。重新跑一遍 Cookie 获取命令就能续上:
python -m tools.cookie_fetcher --config config.yml想重新下载某个作品却一直被"跳过"?程序靠"数据库记录 + 本地文件"双重去重。要重下,得同时清理对应作品的文件和数据库记录,比如:
sqlite3 dy_downloader.db "DELETE FROM aweme WHERE aweme_id = '目标ID';"只删文件不删数据库,程序会认为"记录还在"而跳过;只删数据库不删文件,程序又会从文件名里识别出已下载。两边对齐,重下才会生效。
想让体验再上一层楼?这几招值得试
- 增量下载,只追新不重复:
increase.post: true配合database: true,跑第二次只会下载上次之后的新作品,适合长期跟踪某位博主。 - 时间筛选,只要某个时间段:
start_time/end_time填上YYYY-MM-DD,把下载范围精确圈起来,省流量也省磁盘。 - proxy 配置,网络不顺时救场:
proxy: http://127.0.0.1:7890这种一行配置,API 请求和媒体下载都会走代理。 - Docker 一把梭:项目提供了 Dockerfile,
docker build -t douyin-downloader .再挂载配置和输出目录,装一次到处跑,换机器零成本。 - 定期 git pull 保持更新:抖音接口策略经常变,跟进新版能少踩很多失效的坑。
你的第一个作品,打算存点什么?
说到底,工具的价值要用在具体的人身上才算数。有人拿它存收藏夹里的宝藏视频,有人用它批量囤创作素材,也有人靠热搜榜和评论采集做内容趋势分析——同一条命令,在不同人手里是不同的故事。
如果你也受够了录屏水印和网页压缩,不妨现在就照着上面的流程跑一遍,把第一条无水印视频存下来。遇到坑了,欢迎回来留言,我们一起想办法。
毕竟,喜欢的内容值得被好好保存。
【免费下载链接】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),仅供参考