抖音去水印批量下载完整指南:单条视频、主页与直播存进本地
2026/9/15 18:40:34 网站建设 项目流程

抖音去水印批量下载完整指南:单条视频、主页与直播存进本地

【免费下载链接】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 3.8+,macOS / Linux / Windows 都能跑:

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

然后复制一份配置模板。仓库里的 config.example.yml 对每个字段都写了注释,后面你只需要改link和几个开关:

cp config.example.yml config.yml

下载大多需要登录凭证(Cookie)。跑一条命令会自动打开浏览器,扫码登录后回到终端按回车,凭证就会被写进config.yml,只保存在本机:

python -m tools.cookie_fetcher --config config.yml

如果你打算用"浏览器兜底"(翻页被限制时自动开浏览器帮你翻),需要先装 Playwright:

pip install playwright python -m playwright install chromium

🎬 下载单条视频或图文作品

把一条作品链接贴进配置的link字段就能跑。视频会自动挑无水印源,默认取最高码率档(也可以在video_quality里指定original原画);图文会保存整组图片。v.douyin.com这类短链能自动解析。

link: - https://www.douyin.com/video/xxxxxxxx video: true cover: true # 顺带保存封面 json: true # 顺带保存作品元数据

运行命令就一行:

python run.py -c config.yml

跑完的样子:终端进度条走完,作品落在Downloaded/{作者名}/post/下按"日期_标题_作品id"命名的目录里,打开 mp4 没有水印。嫌改配置麻烦,也可以直接用-u "链接"在命令行临时追加一条。

👤 批量归档一个创作者的主页

链接换成主页地址,mode决定拉哪类内容:post作品、like点赞、mix合集、music音乐原声。number里给每种模式设数量上限,填 0 表示全量:

link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx mode: - post number: post: 50 # 0 = 不限数量 start_time: "2024-06-01" # 只取这段时间发布的作品 end_time: "2024-06-30"

多个模式会并发推进,各自显示进度,失败按指数退避自动重试(1s、2s、5s)。

增量去重database: true(默认开启)会把每个下载过的作品 ID 记进本地 SQLite 文件dy_downloader.db,再配合本地文件双重校验;把increase.post设为true后,再次运行同一位创作者时只抓新增作品,不会重复搬运。

文件命名:默认模板{date}_{title}_{id}会把文件按日期和标题自然分开;你还能组合{year}{month}{author}等变量改写,但模板里必须保留{id},否则重名作品会互相覆盖。打开covermusicavatarjson后,封面、背景音乐、头像和元数据也会跟作品放在同一个目录。

📺 挂机录制一个直播间

把直播间链接(live.douyin.com/{room_id},也支持/follow/live/{room_id}形式)写进配置,程序就开始录流:

link: - https://live.douyin.com/123456789 live: max_duration_seconds: 3600 # 0 = 一直录到主播下播

主播下播、断网或按 Ctrl+C 中断,已录制的字节都会保留(临时文件自动提升为正式文件),落在Downloaded/{作者名}/live/下,并附带一份直播间元数据快照。注意两点:FLV 流录完即可直接播放;HLS 源只保存 playlist 文件,需要再用 ffmpeg 后处理一下。

🔌 把下载任务接进自己的工作流

  • REST API:先pip install fastapi uvicorn,再运行python run.py --serve --serve-port 8000,就能用接口提交链接、按 job_id 查状态,方便写进定时任务或脚本。
  • 完成通知notifications.enabled设为true,在providers里配 bark、telegram 或 webhook 地址,任务成功或失败都会推送到手机;单个渠道挂了不影响下载本身。
  • 语音转写transcript.enabled: true并设置OPENAI_API_KEY后,每个视频作品旁会多出一份.transcript.txt文字稿(图文不转写),方便以后检索。

做内容调研时,--hot-board 30--search "关键词"还能把热搜榜、搜索结果直接导出成 JSONL 文件。

⚠️ 常见坑排查

现象原因解决办法
请求反复提示登录失效、403Cookie 过期了重跑python -m tools.cookie_fetcher --config config.yml,扫码更新一次
主页翻到几十个作品就停了API 分页被风控限制browser_fallback.enabled: trueheadless: false,弹窗出现后手动过验证,等它跑完再关
重跑想重新下载却被跳过数据库 + 本地文件双重去重,只删数据库不删文件不算数先删本地作品目录,再到dy_downloader.db里清掉对应记录
任务太慢或想提速度默认 5 并发、2 请求/秒限速按需调thread(默认 5)和retry_times(默认 3),单批任务量控制适中

中断不是灾难:下载有完整性校验,不完整的文件会被自动清理并重试,再次运行只补缺失部分。

✅ 下一步

  1. 先用一条视频链接走完全流程,打开 mp4 确认无水印、画质满意;
  2. 再挑一位创作者做批量归档,加start_time/end_time约束,并顺手打开increase,以后每次运行只拉新内容;
  3. 想看下载历史时直接查库:sqlite3 dy_downloader.db "SELECT aweme_id, title, author_name FROM aweme ORDER BY download_time DESC LIMIT 20;"

更多参数说明与场景示例,见 README.zh-CN.md。

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

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

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

立即咨询