news 2026/9/16 22:54:57

抖音批量下载实战指南:单条视频到整个主页,3 步配置 10 分钟跑通

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
抖音批量下载实战指南:单条视频到整个主页,3 步配置 10 分钟跑通

抖音批量下载实战指南:单条视频到整个主页,3 步配置 10 分钟跑通

【免费下载链接】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

凌晨一点,运营新人小林还在浏览器里一条条保存竞品抖音视频,存到第 40 个时已经磨掉半天耐心。开源项目 douyin-downloader 就是为这类脏活设计的:粘贴一个链接,自动识别类型,并发下载无水印视频、封面、音乐和元数据。整理一个主页原本要两小时的活,它十分钟跑完。

能力总览:哪些链接可以直接丢给它

工具的装配逻辑在 core/ 目录:链接解析先判断 URL 类型,再由 DownloaderFactory 创建对应下载器,你不用手动指定。

内容类型链接形态对应用途
单条短视频/video/视频ID收藏一条无水印作品
图文笔记/note/笔记ID/gallery/笔记ID下载图集
合集/collection/合集ID/mix/合集ID整合集拉取
原声音乐/music/音乐ID下载该音乐关联作品
博主主页/user/用户ID批量下载作品/喜欢/合集(核心玩法)
分享短链v.douyin.com/短链自动解析后下载
直播间live.douyin.com/房间ID直播实时录制(FLV/HLS)

边界也要说清:识别不了的链接会直接报错退出,不会闷头跑空;收藏合集类模式只支持登录 Cookie 对应账号自己的收藏夹,无法抓取他人收藏。

快速上手:十分钟装好并跑通

安装:三条命令装完依赖

要求 Python 3.8+,克隆后装依赖即可:

git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt

Cookie 三种配法:推荐自动获取

Cookie 是访问抖音接口的通行证,配置里有三种写法:

  1. 自动获取(推荐):配置写cookies: auto,运行时自动打开浏览器引导登录,写完自动落盘,最省心;
  2. 整串粘贴:从浏览器开发者工具复制完整 Cookie 字符串直接填入;
  3. 键值对填写:按msTokenttwidsid_guard等字段逐项填,结构最清晰。

用浏览器回退功能的话,需要再装一次依赖:pip install playwright && python -m playwright install chromium

最小配置:6 行 YAML 跑通第一次下载

link: - https://www.douyin.com/user/你的目标博主ID path: ./Downloaded/ mode: [post] # 下载发布的全部作品 number: {post: 50} # 最多 50 条,0 表示全部 thread: 5 # 并发数 cookies: auto # 自动获取 Cookie,推荐

保存为config.yml,执行:

python run.py -c config.yml

命令行实时刷新每个任务的进度条,跑完自动汇总成功/失败/跳过数量。完整的字段含义见 config.example.yml,注释写得很细。

产物说明:任务跑完你得到什么

默认按"作者 / 模式 / 作品"三级目录归档:

Downloaded/ ├── download_manifest.jsonl └── 作者名/ └── post/ └── 2024-02-07_作品标题_aweme_id/ ├── 2024-02-07_作品标题_aweme_id.mp4 ├── 2024-02-07_作品标题_aweme_id_cover.jpg └── 2024-02-07_作品标题_aweme_id_data.json

两个关键文件值得留神:_data.json存了点赞数、评论数、发布时间、话题标签,做数据整理时不用回网页翻;download_manifest.jsonl是全局清单,每行一条 JSON,记录日期、作者、标题、文件路径,后期用命令行检索或导入表格都方便。

一个反直觉细节:文件名里的日期取自作品发布时间而非下载时间。隔三个月再备份,归档仍按发布顺序排列;只有发布时间字段缺失时才回退到当天日期,并会在日志里告警,属预期行为。

自动化进阶:从"跑一次"到"每天自动跑"

批量下载最大的坑是重复拉取——博主更新 10 条,重跑一遍结果 100 条全下。项目内置 SQLite 去重,配合increase配置就得到增量同步:

increase: {post: true} # 跳过本地已存在的主媒体文件 start_time: "2024-01-01" # 只下指定时间段内的作品 end_time: "2024-12-31" filename_template: "{date}_{title}_{id}" # 命名模板,可用 {author} {like_count} 等变量

把这条命令挂进 crontab,就是每天凌晨自动追更,新作品进来、旧文件绝不动:

0 3 * * * cd /path/to/douyin-downloader && python run.py -c monitor.yml

调参建议thread新手保持 5 左右即可,盲目拉高并发反而容易触发风控;网络波动时把retry_times提到 5;被限速时优先调低请求频率(限流器 默认约 2 次/秒),而不是加并发。

场景对比:三个真实用法,各省多少时间

场景一:竞品账号监控

之前:运营每天手动刷 3 个竞品主页、逐条另存,每天固定耗时约 2 小时,且断更时完全无感知。

之后:3 个主页写进link,开增量同步挂定时任务,每天自动跑,人只看汇总数字。

关键配置

mode: [post, like] number: {post: 0, like: 0} # 0 = 全量 increase: {post: true, like: true}

场景二:研究样本采集

之前:手动搜索关键词、翻页、逐条复制标题和互动数据进表格,采 200 条样本要大半天。

之后:一条子命令直接导出带日期、作者、点赞评论数的 JSONL 文件,跳过下载环节,直接进分析流程。

关键配置

python run.py --search "关键词" --search-max 100 -p ./Downloaded

场景三:重要直播留存

之前:手机架在旁边录屏,人不能离,录完还要剪掉水印和界面。

之后:配置live段,FLV 流实时录制,主播下播或网络空闲自动停止,已录部分保留,全程无人值守。

关键配置

link: [https://live.douyin.com/房间ID] live: max_duration_seconds: 3600 # 0 = 录到主播下播 idle_timeout_seconds: 30

嫌敲命令麻烦,仓库还带了桌面客户端 Douzy,共享同一套后端逻辑:粘贴链接一键开始下载,任务中心里看每个任务的状态、直接打开文件目录。

问题速查表:五个高频故障这样解

现象可能原因处理方式
接口提示未登录Cookie 失效可交互环境工具自动弹浏览器重登并重试;服务器上用python -m tools.cookie_fetcher --config config.yml手动刷新
主页只抓到 20 条左右接口翻页风控确认browser_fallback.enabled: trueheadless: false,浏览器弹窗里手动完成验证,别急着关窗口
个别视频失败作品被删、设私密或断网默认跳过失败项继续跑,加-v看完整日志定位原因
文件名日期"不对"发布时间缺失回退到当天属预期行为,日志有告警;介意的话检查filename_template变量
重跑又全量下载没开增量或媒体文件被删检查increase对应模式为true;删过文件会导致该条重下,属设计如此

使用边界:三条红线记住就行

  1. 用途:适用于个人学习、研究分析、内部素材整理,不用于商业性内容分发或侵权二次传播;
  2. 频率:内置了请求间隔与并发上限(rate_limitthread),保留这些限速逻辑,别硬冲接口,大规模高频抓取会干扰平台服务;
  3. 尊重:下载内容标注来源,遵守平台内容使用协议,不用于恶意竞争或获取隐私信息。

能力与合规是一体的——工具跑得再快,用对了地方,效率才真正属于你。

行动清单:今天就动手

  • 克隆仓库并执行pip install -r requirements.txt装好依赖;
  • 配置cookies: auto,跑一次自动登录确认能打开抖音接口;
  • 试跑一个你关注博主的主页,用上面 6 行最小配置验证产物目录;
  • 挂上increase增量同步和 crontab 定时任务,让它每天自己跑。 ✅

四步走完,小林那十个小时里九成机械重复的活就交出去了——把重复还给工具,把时间还给你。

【免费下载链接】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),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/16 22:53:51

MCLAG双活接入技术详解:原理、配置与故障排错实践

1. 两台交换机只能跑STP吗——接入双归的带宽困境我在一次汇聚层设备割接中碰上了这个经典难题:核心下挂的两台汇聚交换机要升级,但业务完全不能断。最常规的方案无非两种,一是靠STP(生成树协议)做冗余,备链…

作者头像 李华
网站建设 2026/9/16 22:50:47

Linux日志深度解析:故障排查、安全审计与渗透复盘实战指南

1. 日志不是“事后翻箱倒柜”,而是系统运行的实时心电图很多人一提Linux日志,第一反应就是“出问题了才去看”。我干运维和安全分析十年,踩过最深的坑,恰恰就来自这种认知——把日志当备忘录,而不是当生命体征监测仪。…

作者头像 李华