别再录屏了:douyin-downloader 抖音批量下载工具零门槛上手,从 1 个视频到作者主页全量备份
【免费下载链接】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 的思路很简单:你把链接丢给它,它把视频、图集、背景音乐、封面、头像、完整元数据整理成一个结构清晰的本地档案库,之后想怎么翻都行。
接下来,我们就按"上手三程"的路线走:第一程 5 分钟跑通第一单,第二程半小时备份一个作者主页,第三程解锁增量去重等高级玩法,最后再聊聊直播、评论这类按需解锁的进阶功能。
第一程:5 分钟跑通第一单,下载一个无水印视频
这是最像"传统教程"的一步,但别急,后面的体验完全不同。
第一步,准备环境。需要 Python 3.8 或更高版本,Windows、macOS、Linux 都支持。
第二步,把项目拿到本地。打开终端执行:
git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader/douyin-downloader pip install -r requirements.txt第三步,生成配置文件。项目自带的config.example.yml是完整参考,复制一份出来改成你自己的:
cp config.example.yml config.yml打开config.yml,把link换成你想下载的链接。先拿单条视频练手:
link: - https://www.douyin.com/video/7604129988555574538小贴士:短链
https://v.douyin.com/...也支持,工具会自动先解析再下载,不用你手动跳转找原始地址。
第四步,搞定 Cookie。抖音需要登录态才能正常访问,这是所有同类工具绕不开的一环。推荐用项目自带的自动方式:
python -m tools.cookie_fetcher --config config.yml运行后会弹出浏览器,扫码登录抖音,回到终端按回车,Cookie 就被自动加密写入配置了。备选方案是手动把浏览器里的 Cookie 值填进config.yml。
易踩的坑:Cookie 一般 7~15 天失效,失效时重新跑一次上面的命令即可。它只存在你本地,不会上传到任何服务器。
第五步,开始下载。
python run.py -c config.yml几秒钟后,你会看到类似下图的下载进度界面:每个作品的下载状态、成功数、用时都实时可见。第一次跑通后,那种"原来这么简单"的感觉会非常爽。
第二程:半小时备份一个作者主页,四种模式任你选
单个视频跑通之后,真正的重头戏来了——批量下载。当你发现一个优质创作者,想把他主页全部作品保存下来时,把link换成用户主页链接,再告诉工具"按什么模式下载":
link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx mode: - post # 作者发布的作品 - like # 作者点赞过的作品 - mix # 作者创建的合集 - music # 作者使用过的音乐 number: post: 50 # 下载最近 50 个,0 表示全部这四种模式可以叠加使用,工具还会做跨模式自动去重:同一个作品在"发布"和"合集"里都出现,只会下载一次,不会浪费流量。
下载完的每个作品,默认按"作者/模式/日期_标题_ID"的目录结构落盘:
Downloaded/ └── 某博主/ └── post/ └── 2024-06-15_作品标题_123456789/ ├── 2024-06-15_作品标题_123456789.mp4 # 无水印视频 ├── 2024-06-15_作品标题_123456789_cover.jpg ├── 2024-06-15_作品标题_123456789_music.mp3 ├── 2024-06-15_作品标题_123456789_avatar.jpg └── 2024-06-15_作品标题_123456789_data.json也就是说,一个作品不只是"一条视频",而是一个包含封面、原声音乐、作者头像、完整元数据的迷你资料夹。下图是实际下载后的目录效果:
小贴士:
music、cover、avatar、json这些配置项都可以单独开关。比如你只需要背景音乐,就把视频相关关掉,省流量又省时间。
第三程:让工具长出"脑子",增量下载、去重与时间过滤
这一程是 douyin-downloader 和"一把梭"下载工具拉开差距的地方。核心是内置的 SQLite 数据库(默认database: true):每下载一个作品,它的 ID、作者、时间、保存路径都会被记录。
基于这条记录,你获得三个关键能力:
其一,自动去重。再次下载同一作者时,已存在的作品会自动跳过,只补充新内容。这在你定期备份某个创作者时特别省心——每次都全量重下,纯属浪费流量。
其二,增量模式。开启后,工具会只抓取上次之后新增的作品:
increase: post: true database: true其三,时间过滤。只想留某位博主某个月的作品?直接框定范围:
start_time: "2024-06-01" end_time: "2024-06-30"除此之外,下载过程中的"体质"也是按耐用好用的标准设计的:默认 5 线程并发、失败自动指数退避重试、每秒限速防止风控,下载完还会用 Content-Length 校验文件完整性,不完整的文件自动清理重下。用一句话概括:你只需要把链接给它,剩下的脏活累活它自己干。
文件名不满意?工具支持模板变量,比如{date}_{title}_{id},日期、标题、作者、ID 都可以自由组合,让归档彻底符合你的习惯。
进阶篇:直播录制、评论采集、热搜搜索,按需解锁
跑完三程,你已经是个熟练用户了。接下来的功能像一个个"外挂",用得上的时候按需开启。
直播录制。遇到想完整保留的直播,把link换成直播间地址,加上录制时长限制:
link: - https://live.douyin.com/123456789 live: max_duration_seconds: 3600 # 0 表示录到主播下播录制中的 FLV 数据会持续保存,即使主播中途下播或你按 Ctrl+C 中断,已录部分也会完整保留,不会白录。
评论采集。做内容研究或数据分析时,开启comments.enabled,每个作品会额外生成结构化评论 JSON,支持二级回复抓取。
热搜榜与关键词搜索。想知道今天抖音在聊什么,一条命令搞定:
python run.py --hot-board 30 -p ./Downloaded python run.py --search "猫咪" --search-max 100 -p ./Downloaded完成通知与 API 集成。下载完推送 Bark、Telegram 或企业微信 Webhook;或者用python run.py --serve --serve-port 8000以 REST API 服务模式运行,把下载能力嵌入你自己的系统里。
最后提一句桌面版。如果你完全不想碰命令行,项目还基于同一套后端提供了桌面客户端 Douzy——粘贴链接、点检测、选模式,下载进度和作品档案都在图形界面里可视化呈现,适合普通用户日常使用:
被问得最多的 5 个问题,一次说清
1. 为什么只能抓到 20 条作品?这是翻页风控的典型现象。在配置里确保浏览器兜底开启:browser_fallback.enabled: true且headless: false。浏览器弹窗出现后手动完成验证,别急着关窗口。
2. Cookie 失效了怎么办?重新执行python -m tools.cookie_fetcher --config config.yml扫码即可,建议养成每周更新一次的习惯。
3. 想重新下载某个作品?程序靠"数据库记录 + 本地文件"双重判断去重,所以重新下载需要清理对应记录:删掉Downloaded里对应文件夹,再删掉数据库里对应的aweme_id行。
4. 批量下载时进度条刷屏?默认配置已开启progress.quiet_logs: true静默日志,调试时再临时加-v参数看详细信息。
5. 下载速度不理想?检查网络、调大thread并发数(默认 5),必要时在proxy配置项设置代理。
现在,动手备份你的第一个作品
最后给你一份可以直接照做的行动清单:
- 先跑通单条视频,验证环境、Cookie、配置三件事都没问题;
- 再挑一个你最喜欢的博主,用
mode: post批量备份他的主页; - 养成增量习惯,开启
increase和database,把备份变成定期的轻量操作; - 按需解锁进阶功能,直播、评论、热搜、通知,用到哪个开哪个。
任何工具的使用边界都在于:尊重创作者的劳动,仅用于个人收藏、学习与研究。在此基础上,与其一个个手动保存,不如花 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),仅供参考