抖音下载终极指南:用 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 正是为这个瞬间而生的抖音下载工具:免费开源,支持视频、图集、合集、音乐与直播录制,去水印取高清,还能批量备份整个主页。
如果说浏览器里的抖音是"只能看不能存",那 douyin-downloader 就是你的私人下载管家:你把链接丢给它,它在后台默默把无水印的高清内容取回来,分门别类放进你指定的文件夹,再交给你一份带日期、带标题的下载清单。
三问速览:先搞懂它是什么
它能解决什么问题?抖音官方并不提供"另存为高清无水印文件"的入口。douyin-downloader 把视频、图集、合集、音乐(原声)统一成同一条流程:丢链接 → 拿文件。你不需要研究任何接口,它替你处理了水印、清晰度选择和文件命名这些琐事。
它凭什么比别的方案强?很多小脚本只处理单条链接,遇到风控就罢工。它内置两道保险:API 策略失败时自动切换到浏览器兜底;SQLite 数据库与本地文件双重去重,配合下载完整性校验——文件下载到一半会被自动清理并重试。跑几百条的批量任务,你不用一直盯着。
它适合谁用?两类人:一是普通用户,只想把喜欢的视频、直播存下来慢慢看;二是内容创作者,需要定期备份自己的主页作品、整理素材库。会复制粘贴、会改配置文件,就能上手。
60秒上手:先跑起来再说
别急着研究所有参数,先把一次下载跑通。第一步装依赖,需要 Python 3.8 或更高版本:
git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt第二步配置 Cookie,这是访问抖音的"通行证",没有它寸步难行。建议用自动方式——命令会弹出一个浏览器窗口,你登录抖音后回到终端按回车,Cookie 就会自动写进配置:
python -m tools.cookie_fetcher --config config.yml这一步依赖 Playwright,如果提示缺浏览器,先执行
pip install playwright,再执行python -m playwright install chromium即可。
第三步复制示例配置,把里面的 link 换成你想下载的链接,然后运行:
cp config.example.yml config.yml python run.py -c config.yml看到终端里的进度条开始滚动,就说明你已经跑通了。从装环境到拿到第一个无水印视频,全程不超过五分钟。
深度体验:三个真实场景逐个打通
场景一:把一条神级视频存成无水印高清文件
你在别人分享里看到一条视频链接,可能是长链接,也可能是v.douyin.com开头的短链。试试这个命令,单条链接直接追加在命令行里,无需改配置文件:
python run.py -c config.yml -u "https://v.douyin.com/xxxxx" -p ./Downloaded短链会被自动解析,工具随即开始下载。完成后,文件落在Downloaded/作者名/post/日期_标题_aweme_id/目录下——除了无水印的 mp4,还有封面图、原声音乐,以及一份 json 元数据。想存哪条就丢哪条,这就是它的"秒存"用法。
场景二:批量备份一位博主的所有作品
你关注了三年的博主突然宣布退圈,你想把他几百条作品全部存下来留作纪念。在 config.yml 里这样配置,数字设为 0 表示不限数量:
link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx mode: - post number: post: 0 # 0 = 不限制数量 thread: 5如果只想要某段时间的内容,顺手加上start_time: "2024-01-01"和end_time: "2024-12-31"做时间过滤。运行后,终端会逐条展示任务的进度与统计,并发下载时还能看到多个进度条同时推进:
更省心的是去重:同一个作品在 post 和 like 两种模式里撞车,也只下载一遍。最终文件按"作者/模式/日期_标题"整理得井井有条,一眼就能看出每一条作品的发布时间和标题:
场景三:录制一场正在进行的直播
你喜欢的创作者开播了,但你马上要出门。把链接换成直播间地址,设置最长录制时长:
link: - https://live.douyin.com/123456789 live: max_duration_seconds: 0 # 0 = 一直录到主播下播运行后,工具会先展示直播间的标题和在线人数,让你选择录制清晰度,然后开始录制 FLV 流:
最贴心的一点:即使中途断网或你按了 Ctrl+C,已经录下来的部分也会被保留,不会白白丢掉。录制结果连同直播间信息快照一起存放在Downloaded/作者名/live/下。如果源是 HLS 流,工具保存的是 playlist 文件,需要配合 ffmpeg 转成视频。
进阶玩法:两个别人不一定知道的功能
增量下载:让备份只补新货。如果你每周都要同步某位博主的新作品,全量重下既慢又浪费。把 increase 打开,工具会借助 SQLite 里的下载历史,只拉取新增内容:
increase: post: true database: true第一次跑全量,之后每次都是"补丁式"更新,几十秒就结束——非常适合定时任务场景。
把下载历史当数据库用。开启 database 后,每次下载都会在dy_downloader.db里留档。它不只是用来去重的,还是一份可检索的作品档案。想查最近下载了哪些作品,一行 SQL 就够了:
SELECT aweme_id, title, author_name FROM aweme ORDER BY download_time DESC LIMIT 20;配合时间过滤做整理,年终回顾、素材挑选都变得特别顺手。
常见误区:新手最容易踩的四个坑
✗错误做法:不配 Cookie 直接跑run.py,然后被一堆 403 和解析失败劝退。 ✓正确做法:先执行python -m tools.cookie_fetcher --config config.yml完成登录。Cookie 就是通行证,没它寸步难行。
✗错误做法:把 thread 从 5 调到 20,觉得线程越多越快。 ✓正确做法:保持在 5~8 之间。过高的并发反而会触发平台风控,让下载更慢;真觉得慢,优先检查网络和代理设置。
✗错误做法:批量只抓到 20 条就停了,以为工具坏了。 ✓正确做法:这是翻页风控的常见现象。确保browser_fallback.enabled为 true、headless为 false,浏览器弹窗出现后手动过一下验证码,就能继续翻页。
✗错误做法:删掉数据库文件想重新下载,结果什么都没发生。 ✓正确做法:工具是"数据库记录 + 本地文件"双重去重:只删文件会触发重新下载,只删数据库记录则不会。要彻底重下,两边都要清掉。
结语:接下来做什么
到这里,你已经能把单条视频、整页作品,甚至一场直播都稳稳地存进本地了。想挖掘更多能力,打开项目里的 README.zh-CN.md 和 config.example.yml,注释里藏着热搜榜导出、关键词搜索、评论采集、完成通知推送等一堆彩蛋;用着顺手的话,也欢迎把使用中遇到的问题反馈给社区,或提交 PR 让这个工具变得更好。最后提醒一句: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),仅供参考