抖音视频如何批量无水印下载?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 是一款免费开源的抖音无水印批量下载工具:支持视频、图文、合集、音乐与作者主页整站式下载,内置进度展示、失败重试和 SQLite 去重,适合内容运营者、素材采集者与研究人员归档抖音内容。
功能亮点:它具体能替你做什么
📥 单条视频、图文一键无水印下载
你手上只有朋友转发的一条v.douyin.com短链?直接把它写进配置的link列表即可。工具会自动解析短链跳转,优先选取无水印视频源,并基于video.bit_rate自动挑选最高码率版本。图文(/note/)、合集(/mix/)、音乐(/music/,优先下载原声文件)链接也按同样的方式处理。
截图来自基于同一套后端打造的桌面版 Douzy(内测中),演示"粘贴链接即可开始下载"的工作台。
作者主页批量下载
想把某位创作者的全部作品存下来?把/user/{sec_uid}主页链接填入link,再通过mode指定抓取范围:post(作品)、like(点赞)、mix(合集)、music(音乐)可以任意组合,number.post: 0表示不设数量上限。同一个作品在多个模式下只会被下载一次,跨模式自动去重。
任务可追溯,重复下载省掉
命令行端通过 SQLite 数据库 + 本地文件双重去重:已存在的作品直接跳过,缺失或下载不完整的文件会自动重试。每次下载还会追加一条记录到download_manifest.jsonl清单,方便事后按作者、日期、标签检索已落盘的素材。桌面版 Douzy 则提供了可视化的任务中心,可以查看进度、重试失败项:
快速上手:最短路径完成第一次下载
环境要求 Python 3.8+,macOS / Linux / Windows 均可。
git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt cp config.example.yml config.yml接着获取 Cookie(访问抖音 API 的凭证),登录后按提示回车,程序会自动写回配置:
python -m tools.cookie_fetcher --config config.yml python run.py -c config.yml常用配置项不逐一罗列,记住几个高频的即可:
link:下载链接列表(视频 / 图文 / 合集 / 音乐 / 主页)path:保存目录,默认./Downloaded/mode/number:主页下载的模式与数量上限,0 为不限thread:并发数,默认 5;proxy可设置代理- 命令行参数(
-u追加链接、-t并发数、-p目录等)见 README.zh-CN.md 的参数表
进阶玩法:按场景调配置
增量下载与时间过滤
长期跟踪某位作者时,开启increase.post: true后每次运行只拉取新作品(依赖database: true)。配合start_time/end_time(格式YYYY-MM-DD)还能只抓某段时间窗内的内容,做专题归档非常顺手。
翻页被风控限制时,浏览器兜底
批量抓取时常见"只能翻出前 20 条"的风控现象。把browser_fallback.enabled设为true、headless设为false,工具会在翻页受限时自动打开浏览器,你可以手动完成验证码后再继续。目前该兜底针对post模式做了完整验证,like / mix / music仍主要依赖 API 分页。
以 REST API 服务模式跑
想把它挂进自己的采集流程?安装fastapi uvicorn后执行python run.py --serve --serve-port 8000,即可通过POST /api/v1/download提交任务、GET /api/v1/jobs/{job_id}查询状态。同系列还有两个轻量能力值得一试:comments.enabled按作品采集评论(可含二级回复)落盘 JSON;--hot-board 30/--search "关键词"快速导出热搜与搜索结果快照。
常见问题:四个高频疑问
问:为什么只能抓到前 20 条作品?答:这是翻页风控的典型表现。确认browser_fallback.enabled: true且headless: false,浏览器弹出后手动完成验证,不要立刻关闭窗口。
问:Cookie 失效了怎么办?答:重新执行python -m tools.cookie_fetcher --config config.yml即可,登录抖音后回车自动写回。
问:已下载的内容想重新下载怎么操作?答:去重依赖"数据库记录 + 本地文件"双重判断。只删文件、保留数据库记录就会触发重新下载;若想彻底重抓某作者,需同时删除Downloaded/作者名/目录并用sqlite3清理aweme表中对应记录。
问:下载速度偏慢或被限速,如何调?答:工具默认速率限制为 2 请求/秒、并发 5。速度慢时可先检查网络与proxy配置;若频繁触发风控,把thread降到 3-5 并调小批量即可。
资源与后续:文档与源码位置
- 完整文档:README.zh-CN.md、实现说明 PROJECT_SUMMARY.md
- 核心源码:下载主流程与 URL 解析在 core/,Cookie 与 token 管理在 auth/,配置加载在 config/,数据库与文件存储在 storage/
- 提供 Dockerfile 支持容器化部署,测试用例集中在 tests/
抖音接口策略变化较快,建议定期关注项目更新,及时同步风控与签名相关的修复。
【免费下载链接】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),仅供参考