如何快速批量下载抖音作品:douyin-downloader 完整实战指南
2026/9/18 13:50:29 网站建设 项目流程

如何快速批量下载抖音作品: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 是一个基于 Python 的抖音批量下载工具,解决的核心问题有两类:单条视频、图文、合集、音乐的快速无水印保存,以及作者主页作品的完整或增量获取。程序默认内置并发下载、指数退避重试、SQLite 去重与文件完整性校验,API 翻页受限时还能自动切换到浏览器兜底。下文按安装、配置、实战场景与进阶用法依次介绍,每个环节都附上可直接改用的配置示例。

它能做什么:核心下载能力

  • 多类型下载:视频、图文、合集(mix)、音乐(原声)都能处理,v.douyin.com短链会自动解析,视频源默认优先选择无水印地址。
  • 主页批量获取:给出作者主页链接后,按post/like/mix/music模式分别拉取作品,各模式数量用number单独控制。
  • 去重与增量下载:SQLite 记录加本地文件双重判断,已下载内容自动跳过;增量模式下重复运行只取新作品。
  • 元数据档案:每个作品可附带封面、音乐、头像与 JSON 元数据,输出统一写入下载清单download_manifest.jsonl,评论也能随作品一并采集。

快速安装与 Cookie 认证配置

环境上只需要 Python 3.8 以上,macOS、Linux、Windows 均可运行。克隆仓库后安装依赖:

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。接着把config.example.yml复制为config.yml作为起点。Cookie 推荐用内置脚本获取:运行python -m tools.cookie_fetcher --config config.yml,浏览器打开后扫码登录抖音,回到终端按 Enter,认证信息会自动写入配置并保存在本地,无需手动复制。全部就绪后,用python run.py -c config.yml即可启动下载。

核心功能详解:批量下载、去重与元数据管理

模式化批量下载

主页链接配合mode字段决定抓取范围,多个模式可同时勾选,同一个作品在不同模式间不会重复落盘。

  • number按模式设置数量上限,0 表示不限制。
  • start_time/end_timeYYYY-MM-DD格式)可把范围收窄到指定时间段。

SQLite 去重与增量下载

开启database: true后,下载记录默认写入dy_downloader.db,实现见 storage/database.py。每次下载前程序先做“数据库记录 + 本地文件”双重检查:两边都在则跳过,文件缺失则重新下载。

  • increase.post: true等增量开关让重复运行只取新作品,适合定期维护资料库。
  • 除媒体文件外还会追加写入download_manifest.jsonl,一行一条 JSON,便于后续核对与统计。

浏览器兜底机制

API 翻页受限时(典型现象是只能抓到 20 条左右作品),程序会启动真实浏览器,读取页面自己发出的作品列表请求继续翻页,期间支持人工处理验证码。

  • 建议保持headless: false,让窗口可见以便手动完成验证。
  • max_scrollsidle_roundswait_timeout_seconds控制滚动轮数、空闲判定与总超时,可按网络状况调整。

元数据与评论采集

作品默认按“每作品一个子目录”组织(folderstyle: true),目录名由发布时间create_time渲染为日期_标题_作品ID形式,日期取自作品发布时间而非下载时间。

  • comments.enabled: true时按作品采集评论,include_replies控制是否展开二级回复,结果输出为*_comments.json
  • 封面、背景音乐、头像、JSON 元数据各自独立开关,默认只下载视频本体,避免不必要的请求。

真实使用场景与配置示例

场景一:归档特定作者的全部作品。把作者主页放入linknumber.post: 100表示取最近 100 条,mix: 0表示合集全量:

link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx mode: - post - mix number: post: 100 mix: 0

若担心昵称与他人重名导致目录合并,把author_dir改为nickname_uid可获得唯一且直观的作者目录。

场景二:定期增量收集关注账号。同一份配置周期性运行,去重机制自动跳过已下载内容,资料库随时间累积而不产生重复文件:

link: - https://www.douyin.com/user/MS4wLjABAAAAyyyy mode: - post increase: post: true database: true start_time: "2025-01-01"

场景三:主题作品与评论采集。搜索接口把结果存成带时间戳的 JSONL 文件,配合评论开关可以沉淀某个话题下的热门作品及其讨论:

python run.py --search "咖啡探店" --search-max 100 -p ./Downloaded

需要某个时点的热门快照时,--hot-board 30可导出热搜榜 JSONL,用法与搜索一致。

进阶功能用法:通知、转写与 API 服务

完成通知。notifications支持 Bark、Telegram、Webhook 三类通道并发推送,成功或失败均可触发,单个通道失败不会阻塞下载主流程,适合无人值守的长任务。

语音转写。transcript.enabled: true时,视频下载完成后调用 OpenAI Transcriptions API(默认模型gpt-4o-mini-transcribe),在视频旁生成.transcript.txt.transcript.json;密钥通过环境变量OPENAI_API_KEY提供。注意图文作品不生成转写。

REST API 服务。安装fastapi uvicorn后运行python run.py --serve --serve-port 8000,可提交下载任务并轮询 job 状态,方便接入自动化流水线。

其他常用调优项thread并发数(默认 5)、video_quality画质档位(原画 / 最高转码 / 指定分辨率)、proxy代理地址,所有默认值可在 config/default_config.py 中查看。

常见问题与排查指南

现象:主页作品只能抓到 20 条左右。原因是 API 翻页被风控拦截。解决:确认browser_fallback.enabled: trueheadless: false,浏览器窗口弹出后手动完成验证,不要立即关闭窗口。

现象:单个视频、合集或音乐下载返回 403 / 风控提示。原因是抖音 Argus 风控自 2026 年 8、9 月起对这类接口的非浏览器请求一律拒绝,CLI 直连无法携带所需签名。解决:保持浏览器兜底开启(主页作品翻页仍可能取到),或改用桌面版 Douzy——它通过内置登录窗口代发请求,不受此限制,详见 README.zh-CN.md 的限制说明。

现象:下载中途登录态失效或请求异常增多。原因是 Cookie 超过有效期。解决:重新执行python -m tools.cookie_fetcher --config config.yml刷新认证,脚本源码在 tools/cookie_fetcher.py。

现象:进度条反复刷新、日志刷屏。原因是日志级别偏高。解决:保持progress.quiet_logs: true静默进度阶段日志,需要排查时再临时加--show-warnings-v

开始使用:三个立即可执行的动作

  1. 先用单条视频链接跑一遍python run.py -c config.yml,确认 Cookie 有效、目录结构与命名符合预期,再扩展到主页批量任务。
  2. 对需要长期跟进的作者主页,开启increasedatabase并交给定时任务定期重跑,资料库保持持续更新且无重复。
  3. 需要沉淀完整档案时,同时打开jsoncovercomments,并保留download_manifest.jsonl用于事后核对与导出。

本工具适用于技术研究、学习交流与个人数据管理场景,请在使用中遵守相关法律法规与平台规则,尊重创作者的合法权益。

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

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询