☰
抖音批量下载怎么做:douyin-downloader 的封面提取与主页归档
2026/10/13 12:36:23 网站建设 项目流程

抖音批量下载怎么做: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 用于抖音批量下载无水印作品,把创作者主页的视频、图集、合集与原声落到本地。配置一条主页链接,即可按日期范围拉取指定数量的作品并保留封面,适合个人内容存档与竞品分析。

跑起来:从 clone 到第一条下载

准备环境与依赖

环境要求是 Python 3.9 及以上,系统覆盖 Windows、macOS、Linux。拿到仓库后先装依赖,浏览器兜底功能还需要额外装 Playwright 和 Chromium,这一步可先跳过、后面用到再补:

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

首次运行前要先登录一次。把示例配置复制为config.yml,再运行python -m tools.cookie_fetcher --config config.yml,它会拉起浏览器,你登录抖音后回到终端按 Enter,Cookie 就写进本地文件了。

最小可运行示例

把config.yml里的示例link换成目标博主主页,其余字段可以先不动,直接跑:

cp config.example.yml config.yml python run.py -c config.yml

跑通后,作品会按作者目录归档到path指定的文件夹,默认是./Downloaded/。全部参数可以用python run.py --help查,-u追加链接、-t指定线程数、-v打开详细日志。Douzy 桌面版提供了同样的选项,勾选处理内容、设数量上限与日期范围后一键提交,下面是它的抖音配置界面:

能力拆解:封面、批量与画质

开启封面提取并另存 _cover.jpg

一条cover开关,就能把每个视频与图集的原始封面另存为{文件主干}_cover.jpg。

video: true cover: true mode: [post]

cover默认是false,必须显式打开才会生成封面文件,这样默认行为不会平白多出几倍产物。图集本身没有"视频封面"字段,代码会退回取第一张图作为封面,保证图文内容也有图可存。

按主页批量下载并做增量去重

指向创作者主页后,工具按mode列出的类型批量拉取,并用 SQLite 记录已下载作品,避免重复。

link: - https://www.douyin.com/user/xxxx mode: [post] number: {post: 10} increase: {post: true}

number.post控制条数,填0表示不限量;increase.post为true时靠数据库跳过已下作品,需要重下时把它改为false,会强制重下并覆盖当前筛选范围内的文件,整个过程不用清空数据库。

选择画质档位与控制并发

下载时可以指定码率档位,并调节并发线程数与重试次数。

video_quality: highest thread: 5 retry_times: 3

video_quality默认highest(最高转码档),改成original会额外发一次原片探测请求,探测失败才退回最高转码档,因此每条作品多约 10 秒开销。thread官方默认 5,数值拉太高更容易触发风控。

工程细节:封面镜像与限速

封面镜像为什么把 p3 域名排到最后

抖音的封面 URL 常以多个镜像返回。storage/database.py里的order_cover_mirrors做了两件事:把p3-开头的域名排到最后,再保序截断到 3 个。原因是p3-域名的 403 概率偏高,先请求非p3镜像更容易成功,同时数据库里只留 3 个镜像,后续补下载时按这个顺序逐个尝试。

限速与退避重试如何降低风控

control/rate_limiter.py的默认限速是每秒 2 次请求,每次还会加 0~0.5 秒的随机抖动;control/retry_handler.py在失败后按 1 秒、2 秒、5 秒的间隔退避重试,上限由retry_times决定。这套节奏解释了为什么thread不宜猛拉:并发越高,单位时间请求越密,越容易撞上线速上限和风控,而随机抖动正是为了让请求不呈现整齐划一的节奏。

边界与注意

这套工具面向个人内容管理与学习场景,典型用法是存档自己的作品、整理竞品账号素材或收集教学案例;它不做付费内容或加密影视的破解,放映厅这类 DRM 加密内容在工厂层就被拦下,并给出明确的"能力不支持"原因,而不是一个永远等不到的版本。

需要注意几个现实限制:CLI 仅支持抖音,日常多平台需求要用 Douzy 桌面版;抖音接口的风控目前会拦截单条视频、合集、音乐、喜欢、收藏的 CLI 下载,主页作品可走 Playwright 浏览器兜底但不保证成功;Cookie 过期时重跑cookie_fetcher即可,反复重试并不能绕过风控;并发与限速建议保持默认,调高前想清楚风控风险。工具请遵守版权、隐私与平台规则,平台接口变化也可能影响可用性。

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

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

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

立即咨询