抖音批量下载工具完整上手:30分钟从安装到批量去水印
抖音批量下载工具完整上手:30分钟从安装到批量去水印
【免费下载链接】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——一个抖音批量下载工具,主打无水印、整页抓取、自动归档。
一句话说清楚它:把"在抖音上手动保存素材"这件事自动化。以前存视频像一格格往仓库搬箱子,现在相当于多了条传送带——贴一条链接,视频、图文、合集、音乐原声按你的要求下来,去水印、按作者和日期归类,还顺带记下哪些已经下过,避免重复劳动。
跟我走一遍:从安装到批量去水印
一条命令完成环境配置
Python 3.8 以上环境,在终端里执行三行:
git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt如果你希望后面用到"浏览器兜底"和自动获取 Cookie 的能力,再多装一句:
pip install playwright && python -m playwright install chromium拿到登录态再干活
抖音内容基本都要登录态才能访问,好在工具自带 Cookie 获取器,不用手动去浏览器里翻 Cookie:
cp config.example.yml config.yml python -m tools.cookie_fetcher --config config.yml它会自动打开浏览器,你登录一次抖音,回到终端按回车,Cookie 就写进config.yml了。之后只要改两个地方——要下载的链接,和下载哪些类型的内容:
link: - https://www.douyin.com/user/你的sec_uid mode: - post # 发布作品 - like # 喜欢列表 - mix # 合集 path: ./Downloaded/ number: post: 0 # 0 表示不限数量想同时抓合集、原声,就在 mode 里加上mix和music,它会在主页下逐项扫描,跨类型自动去重。
运行,然后去冲杯咖啡 ☕
python run.py -c config.yml终端会逐条显示每个文件的下载进度,默认 5 个线程并发,嫌快嫌慢都能在配置里调thread。跑完后打开目录,每个作品一个文件夹:无水印视频、封面、音频、JSON 元数据各归其位。
这是我第一次跑的效果:进度条逐条推进,下载完成 1/1,用时不到一分钟。换成几十上百条素材的批量任务,也是一样排队走完,只是时间更长些。
三个让我离不开它的能力
这样设置避免重复下载
重复下载是批量任务最常见的坑。douyin-downloader 用 SQLite 记录所有下载历史,同时扫描本地文件做二次确认,两边都命中才跳过:
database: true database_path: dy_downloader.db increase: post: true开启increase之后,第二次跑同一个作者主页,只下"新增"的作品,旧的一律不动。同一个视频即使同时出现在主页和合集里,也只下载一次。对我这种什么都想留一份的人来说,这条最省心。
任务中心把每次下载单独列出来,进行中、已完成、失败一眼可见,想复查某次任务去了哪个目录,点一下就有。
翻页被限制时,让浏览器兜底接管
刚开始用的时候,我发现一个主页最多只能抓到 20 条,再多就停了——这是抖音的翻页风控。解决办法是打开浏览器兜底:
browser_fallback: enabled: true headless: false触发时它会弹出浏览器自动往下翻,你只需要在出现验证时手动过一下验证码,别急着关窗口。验证通过后,剩下的内容会继续抓完。max_scrolls控制它最多滚多少屏,wait_timeout_seconds控制等待时长,都可以按需调整。
命名规则提前定好,后面省心
默认情况下文件按"日期_标题_ID"命名,但我建议自己再定一套模板:
folderstyle: true filename_template: "{date}_{title}_{id}" author_dir: nickname_uid模板里至少保留{id},防止标题相同导致覆盖;author_dir用"昵称_sec_uid"比纯昵称更稳,博主哪天改名了,目录也不会乱套。注意切换命名方式只影响后续下载,已经下过的文件不会被迁移。
踩过的坑,帮你提前避开
- Cookie 会过期。抖音登录态一般 7–30 天失效,失效后重新跑一次
python -m tools.cookie_fetcher --config config.yml就能续上,比手动复制粘贴省事得多。 - 只下到 20 条别慌。先确认
browser_fallback已开启,再看headless是不是false,验证码记得人工完成。 - 进度条太刷屏。把
progress.quiet_logs设为true,下载过程会安静很多,排查问题时再临时加-v看详细日志。 - 想重新下载某个作品,需要同时清掉本地文件夹和数据库记录(
sqlite3 dy_downloader.db "DELETE FROM aweme WHERE aweme_id='...';")。只删文件或只删数据库,程序都会认为它"已经下过"而不触发重新下载。
它适合谁,用它时别忘了什么
如果你要定期攒剪辑素材、备份喜欢的博主内容、整理合集和原声,或者只是想把点过赞的视频留个档,这个工具能把几小时的手工活压到几分钟。它还支持直播录制、评论采集和 REST API 服务模式,进阶玩法可以翻翻server/和 README 里的 live 部分。
最后提醒一句:下载功能请用于个人学习、创作和研究,尊重创作者版权,别拿去做搬运和商用。工具只是帮你省时间,剩下的,交给你的创作 🎬
【免费下载链接】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),仅供参考
