抖音无水印批量下载实操记录:从单条视频到 274 个作品的完整链路

发布时间:2026/8/27 1:08:27
抖音无水印批量下载实操记录:从单条视频到 274 个作品的完整链路 抖音无水印批量下载实操记录从单条视频到 274 个作品的完整链路【免费下载链接】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-downloaderdouyin-downloader 是一个用 Python 写的抖音内容备份命令行工具核心能力是无水印批量下载作品、原声音乐、封面与元数据。第 27 天晚上我用它备份了某博主主页全部 274 个作品视频、音乐、封面按作品分目录落盘再次运行只拉取新增部分。下面是完整实操记录不含营销话术只讲做了什么、看到什么。它做什么不做什么一句话定位这是内容备份工具不是视频管理器也不做转码。能做的事单条视频或图文支持分享短链和网页直链用户主页发布作品post、喜欢作品like、合集mix三种模式音乐集合某条原声被使用的所有作品直播间解析 FLV 流地址交给本地播放器或 ffmpeg 录制附属内容原声音乐、封面、作者头像、元数据 JSON不做的事没有图形界面不转码不云端同步全部由 YAML 配置或命令行参数驱动。项目里有两个入口脚本DouYinCommand.py更稳定适合单条视频downloader.py支持自动获取 Cookie适合主页批量。使用说明 在仓库里可以直接看。环境搭建与 Cookie 抓取命令环境要求 Python 3.8 以上。克隆仓库并安装依赖# 拉取代码并安装依赖 git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt执行完毕后终端应显示所有包安装完成、无红色报错。依赖很轻requests、PyYAML、rich 这类核心包之外没有重型依赖。图DouYinCommand 的命令行帮助支持链接、路径、音乐、封面、头像、模式等参数绕不开的是 Cookie。抖音的接口需要登录态才能拉取主页列表和作品详情获取方式有三种自动抓取推荐运行python cookie_extractor.py会弹出浏览器窗口扫码登录后工具自动把 Cookie 写进配置文件。前置条件是装好 Playwrightpip install playwright playwright install。手动复制浏览器按 F12在请求头里复制整串 Cookie通过get_cookies_manual.py粘贴进去它会解析并校验必填字段。直接写配置在 配置文件模板 里cookies: auto表示自动抓取也可以换成整串字符串或键值对关键字段是msToken、ttwid、sessionid。Cookie 有效期大约一到两周。失效的表现是 403 或拉不到列表重跑抓取命令即可。三种运行入口单视频、批量与直播录制单视频是验证环境最快的方式# 下载一条分享链接指定保存目录 python DouYinCommand.py -l https://v.douyin.com/XXXX/ -p ./Downloaded运行后终端依次输出视频、音乐、封面的下载进度每条带文件大小和耗时结束时保存result.json元数据。图单条作品的下载日志视频、音乐、封面逐项完成并记录耗时批量下载走配置文件。把主页链接放进link用number限定数量# 主页批量下载配置 link: - https://www.douyin.com/user/MS4wLjABXXXX mode: - post number: post: 0 # 0 表示全部N 表示最近 N 个 thread: 5 # 并发线程数保存为config.yml后运行python downloader.py加--auto-cookie会先抓 Cookie。几个百作品的量级下终端输出并行进度条和结束时的成功、失败统计。图主页作品批量下载进度每个作品独立进度条完成后汇总统计直播间用独立参数处理# 解析直播间的推流地址 python DouYinCommand.py -l https://live.douyin.com/123456 -p ./Downloaded脚本会列出多档清晰度的流地址并输出 FLV 链接复制给 ffmpeg 或播放器即可录制同时落一份result.json。图直播间解析结果按清晰度列出 FLV/HLS 流地址供录制五个关键配置项不需要背全配置表下面五个覆盖绝大多数场景number.post0 为全部正数为最近 N 个。首次运行建议先给 3~5 个验证链路。increase.post: true增量下载必须搭配database: true重跑时跳过已下载作品。start_time/end_time时间窗口过滤格式YYYY-MM-DD留空表示不过滤。thread并发数默认 5网络不稳时降到 1~3。folderstyle: true每个作品一个子目录视频、封面、音乐、JSON 放在一起关闭后文件平铺在保存根目录。music/cover/avatar/json控制四类附属内容默认全部开启只要视频就关掉其余几项。图批量下载后的文件视图封面按日期与标题归档便于核对下载完整性SQLite 去重与增量下载原理开启database: true后每个作品下载完成都会写入aweme表aweme_id带唯一索引另有发布时间戳、下载时间戳、作者等字段。增量判断的逻辑很简单下载前按作者作品 ID查表命中就标记跳过已存在连下载请求都不发。图启用时间过滤与增量模式后的运行日志已存在作品直接跳过实际效果是每周跑一次只下载新增作品。数据库是单文件 SQLite也方便直接查历史-- 查看最近 20 条下载记录 SELECT aweme_id, desc, author_name FROM aweme ORDER BY download_time DESC LIMIT 20;执行结果是最近 20 条记录每行一个作品。这张表也是这个博主已经备份到哪个时间点的唯一依据。踩坑速查403 / 未登录Cookie 过期重跑cookie_extractor.py若频繁出现检查配置里msToken是否被改动。只拉到 20 / 35 个作品分页接口被限流。降并发、避开高峰时段脚本自带retry_times: 3重试多数情况能自行恢复。下载中断、文件不完整下载模块支持断点续传重跑同一命令即可已完成的文件会被数据库去重跳过。批量任务内存或磁盘占用高降低thread先用小number跑通再放量或加时间窗口过滤几个百作品约几个 GB先确认磁盘余量。文件名异常脚本会自动替换特殊字符并限制长度一般不需要手工处理。最后划一条线下载内容仅用于个人备份、学习与归档。控制请求频率不要对同一主页高频持续拉取尊重创作者的版权。下一步可以直接做三件事克隆仓库并完成 Cookie 抓取用一条单视频链接验证全链路复制config.example.yml为config.yml填入要备份的主页先以number.post: 5试跑确认结果无误后打开database与increase每周执行一次做增量更新。【免费下载链接】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),仅供参考