抖音批量下载工具快速上手指南:主页作品无水印保存 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(桌面版名为 Douzy)是一款开源的抖音批量下载工具:把博主主页链接填进配置文件,它就能无水印下载视频、图文、合集与原声音乐,并提供实时进度、失败重试、数据库去重和浏览器兜底。无论你是想长期备份某位创作者的全部作品,还是搭建自己的内容素材库,一份 YAML 配置就能完成。
它解决的 3 个真实痛点
手动保存最大的麻烦不是"能不能下",而是"下完之后的管理"。逐个复制作品链接、反复粘贴到下载器,批量操作时极其耗时,而且没有任何记录——同一条作品下次还会再下一遍,白白占掉几十上百 MB 的硬盘。
另一个头疼点是文件组织。手动保存的文件散落在下载目录里,名字是随机字符串,无法区分作者和日期。douyin-downloader 默认按"作者目录 → 模式目录 → 发布日期_标题_作品ID"的结构落盘,文件名里的日期取自作品发布时间而非下载时间,归档后可以直接按时间线浏览。
5 分钟跑起来
前置条件只有一个:Python 3.9 或更高版本(Windows、macOS、Linux 均支持)。
git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt cp config.example.yml config.yml python -m tools.cookie_fetcher --config config.yml最后一条命令会弹出一个浏览器窗口,登录抖音后回到终端按回车,Cookie 就保存好了——认证信息只存在本地,不会上传。然后把config.yml里的示例link换成目标博主的主页链接,运行:
python run.py -c config.yml下载结果默认落在./Downloaded/下。更多参数可以用python run.py --help查看,完整配置项注释都在 config.example.yml 里。
功能亮点
无水印下载,画质档位可选
抖音接口会为每个视频返回多档码率,工具默认选最高转码档并去除水印;把video_quality设为original则会先探测上传原片,比转码档大就直接下原片,探测失败自动回退,不会报错。省流量的场景也可以指定720p之类的固定分辨率。
增量下载 + 双重去重
重复下载是最常见的浪费。工具采用"磁盘优先、数据库兜底"的判重策略:先检查磁盘上主媒体文件是否存在且非空,缺失或为空才重新下载;数据库里的aweme表则记录所有已下载作品的 ID 和路径。把increase.post设为true后,重复跑同一个任务只会补下新增内容——这是"定期备份博主主页"场景的核心开关。
五种下载模式覆盖大部分需求
配置里的mode字段决定拉取哪类内容,可以组合使用:
mode: [post, mix] number: post: 100 # 每个模式独立限数量,0 表示不限 mix: 0post是博主发布的作品,like是公开点赞列表,mix是合集,music是音乐原声,collect是收藏夹。不同模式各有限数量和增量开关,互不干扰。
浏览器兜底 + 全程可观测
接口翻页受限时,工具会用 Playwright 驱动真实浏览器滚动加载来补全作品列表(browser_fallback.enabled: true默认开启)。下载过程有实时进度条、失败自动重试(默认 3 次)和速率限制(默认 2 QPS),避免请求过快被限流。每次任务还会追加写入download_manifest.jsonl清单文件,记录每部作品的日期、标签和落盘路径,方便事后核对。
典型用法
场景一:长期备份一位博主
适合追更某个创作者的用户。配置只改三处:
link: - https://www.douyin.com/user/YOUR_SEC_UID number: post: 0 # 不限数量,全量拉取 increase: post: true # 只补新增作品每周跑一次python run.py -c config.yml,新增作品会自动按发布日期归档进对应作者目录,旧的纹丝不动。需要重下已下载的内容时,把increase.post改为false即可,不必清空数据库。
场景二:搭建内容研究素材库
适合做内容分析、需要结构化数据的研究者。在start_time/end_time圈定时间范围,再按需打开评论采集(comments.enabled: true,每个作品额外生成*_comments.json)和语音转写(transcript,需配置OPENAI_API_KEY)。产出是"视频文件 + 元数据 + 评论 + 转写文本"的完整档案。需要提醒的是,抖音接口风控目前在 CLI 端对部分单作品与合集接口有限制,主页作品可走浏览器兜底但不保证成功,日常高频下载可以配合 Douzy 桌面版使用。
避坑与常见问题
Cookie 过期、突然什么都下不了→ 原因是抖音登录态失效,接口开始返回空数据或报错 → 重新运行python -m tools.cookie_fetcher --config config.yml即可,Cookie 有效期通常以天计,长期任务建议定期检查。
主页只能抓到少量作品→ 原因是触发了风控验证,接口翻页被截断 → 保持browser_fallback.enabled: true和headless: false,在弹出的浏览器里手动完成验证后继续;如果仍受限,说明该接口当前被门禁,可稍后再试或改用桌面版。
批量下载很慢或频繁失败→ 原因通常是并发过高被限流 → 把thread从默认的 5 降到 3、确认rate_limit不低于 2,网络不稳定时配置proxy;仍定位不了问题时加-v参数(python run.py -c config.yml -v)查看详细日志。
写在最后
一句话概括:douyin-downloader 把"复制链接—等待—整理文件"这三件最耗时的事情自动化了,你只需要维护一份配置文件。建议下一步直接去仓库试跑:先下 1 条作品熟悉目录结构,再打开增量开关跑一次全量任务;配置细节看 config.example.yml,模块划分可以从 core/(下载主流程)、control/(限速与重试)、storage/(数据库与文件管理)三个目录入手。
最后提醒一句:本工具仅适用于个人学习、研究和自己数据的备份用途,请尊重创作者版权与平台规则,合理控制下载频率。
【免费下载链接】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),仅供参考