抖音下载器:3步上手无水印批量下载完整指南
【免费下载链接】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 写的命令行抖音下载器,MIT 协议,一个 YAML 配置文件就能驱动整个批量下载流程。
- 是什么:粘贴链接进配置文件,解析、下载、归档、去重全自动,默认带进度条、重试和 SQLite 去重
- 能处理哪些内容:短视频、图文、合集、原声音乐、直播录制,以及当前账号的收藏夹
- 适合谁:做竞品分析的内容创作者、需要采样的研究者,以及单纯想存下喜欢的视频的你
桌面版 Douzy(内测中):粘贴链接即可开始批量下载
二、3步跑通第一个任务
第1步|环境准备 🐍
需要 Python 3.8+,Windows / macOS / Linux 都能跑。克隆下来装依赖:
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。
第2步|关键配置 ⚙️
把 config.example.yml 复制成config.yml,只改link和number两处,其余保持默认(并发 5、重试 3 次、去重数据库开启):
link: - https://www.douyin.com/user/MS4wLjABxxxx # 博主主页链接 path: ./Downloaded/ mode: - post number: post: 20 # 0 表示不限跑之前先取一次 Cookie:执行python -m tools.cookie_fetcher --config config.yml,在弹出的浏览器里登录抖音后回终端按 Enter,会自动写入配置,不用手抄字符串。
第3步|执行与验证 ✅
python run.py -c config.yml终端里会滚动 Rich 进度条。跑完看两个地方:Downloaded/作者名/post/下每个作品一个子目录,里面是 mp4 加_data.json;Downloaded/根目录多了一个download_manifest.jsonl下载清单。有这两个,就算跑通了。
任务中心:每条任务的下载结果、成功与失败数一目了然
三、按你的任务来
当你要批量保存某个博主的作品
手动一条条复制,慢且命名混乱。在配置里把mode写全,number给上限:
link: - https://www.douyin.com/user/MS4wLjABxxxx mode: - post - mix number: post: 100 mix: 05 个并发跑完 100 条作品,每条都落在"日期_标题_ID"命名的独立文件夹里;同一作品在 post 和 mix 里都出现时自动去重,不会下载第二遍。
收藏合集也能整包下载(桌面版功能,内测中)
当你要持续跟进、只拉新作品
关注了几个账号,每次跑一遍都怕重复下载。其实增量开关increase.post默认就是true,只要别删 SQLite 记录,第二次跑只补新作品。
效果:博主上周发了 3 条新作品,这次就只下这 3 条,之前下载的 100 条直接跳过,重复占空间的事不再发生。
关注列表同步后,哪位博主有新作品、有几条,标记得清清楚楚
当你要围绕一个话题做研究
按关键词搜索,结果落成结构化文件,不进下载队列:
python run.py --search "猫咪" --search-max 100 -p ./Downloaded最多 100 条作品导出到一个 JSONL 文件,一行一条,含作品 ID、作者、标题和标签,脚本直接读。想要大盘数据,把--search换成--hot-board 30就是热搜榜快照。
当你要录一场直播
把直播链接丢进link,配几行参数:
link: - https://live.douyin.com/123456789 live: max_duration_seconds: 3600max_duration_seconds写0就录到主播下播为止。FLV 存进作者名/live/下并附带房间信息快照;中途主播下播或你按 Ctrl+C,已录的字节也会自动保留。这个功能标注为实验性,先小场试录。
四、效率再拉一档
下原画:抖音给每条视频返回多档码率,默认取最高转码档。改成video_quality: original会去探测上传原片,原片可能比转码档大数倍,探测失败自动退回最高转码档,不浪费请求。
只抓某个时间段的作品:start_time: "2025-01-01"配end_time: "2025-06-30",格式 YYYY-MM-DD,翻页阶段直接过滤,不用下完再筛。
挂代理长跑:proxy: "http://127.0.0.1:7890"对 API 请求和媒体下载同时生效,遇到 IP 限制时比裸连稳。
五、踩坑自救指南
只能抓到20条作品?
这是翻页风控的典型症状。确认browser_fallback.enabled: true且headless: false,浏览器弹窗出现后手动完成验证,别急着关窗口。
Cookie失效了,请求全失败?
重跑python -m tools.cookie_fetcher --config config.yml,登录完自动写回配置,不用手动复制字符串。
下载速度明显偏慢?
默认并发 5、限速每秒 2 个请求,速度有上限属正常。先把thread降到 2~3 排除互相争抢,再检查是不是代理线路差。
想重新下载已下载过的作品?
去重靠"数据库记录 + 本地文件"双重判断,删掉Downloaded/里对应的作品目录、再清掉dy_downloader.db里的记录,下次运行才会重新抓取。
六、使用边界
- 可以做:个人学习与研究、存档自己的收藏夹、非商业的内容分析
- 不要做:把别人的作品二次商业分发、大规模爬取干扰平台服务、抓取用户隐私数据
- 工具默认限速每秒 2 个请求、并发 5 个,这是刻意留的余量,
thread别盲目拉大
回到开头那位美食博主:现在你只需把主页链接丢进config.yml,5 分钟后就能开始逐条过作品库。clone 下来跑第一条链接吧,半小时后你的硬盘上会有一批整理好的素材。
【免费下载链接】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),仅供参考