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 是一款开源免费的抖音无水印批量下载工具,视频、图文、合集、音乐、整个主页都能一次搬回本地,还内置去重和断点续传。本文面向零基础读者,目标是 30 分钟带你跑通第一次下载。
无水印下载能力全景:它能替你存下哪些东西
上手前花一分钟认清它的边界,能力按"单条 / 整页 / 流式"三组来记:
单条:粘个链接就能下
- 🎬 单个视频与图文笔记:链接直接粘进配置即可
- 🔗 短链自动解析:App 分享出来的
v.douyin.com/xxx短链会自动转成长链,不用你手动处理 - 📦 单合集与单音乐:合集、原声链接粘贴后整组抓取,音乐优先拿原声文件
整页:把一个创作者搬回本地
- 👤 作者主页批量:作品(post)、点赞(like)、合集(mix)、音乐(music)四种模式各取所需
- ❤️ 自己的收藏夹:登录状态下,"收藏夹"和"收藏合集"可以整体搬走
流式:持续产生的内容
- 📺 直播录制:FLV/HLS 源都能录,主播下播时已录数据自动保留
- 💬 评论采集:按作品抓评论,输出结构化 JSON
- 🔥 热搜榜与关键词搜索:看今天抖音在聊什么,按词收集作品
以上每一类都会优先挑选无水印的最高清源(按码率自动选),同时按需附带背景音乐、封面图、作者头像和元数据 JSON——下载完,一个作品的资料整整齐齐都在本地。
四步跑通第一条下载链路
第一步:克隆项目并安装依赖
前提是电脑装有 Python 3.8 及以上版本。依次执行:
git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader cp config.example.yml config.yml # 复制配置模板 pip install -r requirements.txt💡 安装慢或报网络错误时,临时换国内镜像源:
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
后面还要用到"扫码拿凭证"和浏览器兜底,提前把浏览器内核装好:
pip install playwright && python -m playwright install chromium你会看到什么:终端把依赖一行行装完、没有红色报错,就算过关。
第二步:扫码获取登录凭证(Cookie)
抖音要拿到完整内容,需要你的登录凭证。Cookie(登录凭证,扫码一次就能拿到)不用手动找,工具会自动抓:
python -m tools.cookie_fetcher --config config.yml运行后自动弹出浏览器,用手机扫码登录一次抖音,回到终端按一下回车,凭证就被写进配置文件了,只保存在你本地。
⚠️ 凭证有效期有限,过期后重跑上面这条命令扫一次码即可,其余配置一律不用动。
第三步:写一份最小可运行配置
打开 config.example.yml 复制出来的config.yml,把链接换成你想下载的视频,其余先保持默认:
link: - https://v.douyin.com/EXAMPLE123/ path: ./Downloaded/ music: true # 顺带下背景音乐 cover: true # 顺带下封面图 json: true # 保存作品元数据第四步:运行并验收第一个成果
python run.py -c config.yml几秒后,终端显示进度条和成功统计,Downloaded/目录里出现你的第一个无水印视频:
命令行界面:链接解析、下载配置、成功统计一目了然
把整页搬回家,且不重复劳动:批量下载
单个视频只是热身,整页批量才是重头戏。把配置里的链接换成创作者主页,再指定模式:
link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx mode: - post # 发布的作品,也可写 like/mix/music number: post: 50 # 只下最近50个,0 表示全部mode支持post(作品)、like(他点赞的)、mix(合集)、music(用过的音乐),登录后还能用collect/collectmix搬自己账号的收藏夹;跨模式自动去重,同一个作品不会下两遍。运行时每个任务都有独立进度条并行推进:
批量下载时每个作品一条独立进度条,并发执行、失败自动重试
不想全要,按时间截取:
start_time: "2024-06-01" end_time: "2024-06-30"下过的不想下第二遍:开启数据库增量模式,工具会把每个作品 ID 记进本地 SQLite 小数据库,再跑同一创作者时自动跳过已有作品:
database: true increase: post: true中途断了也不用从头来:内置完整性校验,文件不完整会自动清理重取,再次运行只补缺的部分。
落盘目录结构与文件命名规则
文件按"发布时间 + 标题 + ID"自动归档:
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_music.mp3 └── 2024-02-07_作品标题_aweme_id_data.json命名不是写死的,可用{date}、{title}、{id}、{author}、{year}、{month}、{day}等变量自由组合,模板里必须包含{id}防止重名覆盖:
folderstyle: true filename_template: "{date}_{title}_{id}" folder_template: "{date}_{title}_{id}"落盘效果:一个作品一个文件夹,视频、封面、BGM、元数据都在里面
三类进阶场景:直播挂机录制、评论采集、热搜搜索
直播挂机录制,下播自动收尾
痛点:主播开播时你正上班上学,想留个回放,下播后现场就没了。
link: - https://live.douyin.com/123456789 live: max_duration_seconds: 3600 # 0 = 录到主播下播结果:全程挂机录制,文件存到Downloaded/{作者}/live/下并附带*_room.json直播间元数据快照;主播下播、断网或你按 Ctrl+C 中断,已录制的部分都会保留。
直播录制:自动识别直播间、拉取直播流并保存,下播自动收尾
评论采集,做内容研究的好帮手
痛点:想分析某个作品下用户在讨论什么,一条条截图太原始。
comments: enabled: true include_replies: true # 连二级回复一起抓 max_comments: 500 # 0 = 不限结果:每个作品旁多出一份*_comments.json,结构化 JSON,连二级回复都在,直接丢给脚本分析。
热搜榜与关键词搜索
痛点:不追特定博主,就想看今天抖音在聊什么,或按关键词收集作品做选题。
python run.py --hot-board 30 -p ./Downloaded python run.py --search "猫咪" --search-max 100 -p ./Downloaded结果:两条命令分别把热搜榜前 30 条、"猫咪"相关作品导出成 JSONL 文件,落在hot_board/和search/目录,方便后续检索。
接进自己的工作流:三个钩子
如果你不只自己用,还想把它嵌进自己的系统,关注这三个能力:
- 🔌REST API 服务模式:先
pip install fastapi uvicorn,再运行python run.py --serve --serve-port 8000,通过接口提交下载任务、查询状态——适合写进自动化脚本或自己的产品里; - 📣完成通知推送:
notifications.providers支持 Bark、Telegram、企业微信 Webhook,长任务跑完手机立刻知道结果; - 📝视频语音转写:
transcript.enabled: true并提供 OpenAI Key 后,每个视频生成xxx.transcript.txt和xxx.transcript.json,把视频内容变成可检索的文字。
常见报错速查
问:突然报"403 Forbidden"或提示未登录?
答:凭证过期了,最高频的一种。重跑python -m tools.cookie_fetcher --config config.yml扫一次码即可,建议一周扫一次保持新鲜。
问:批量下载只抓到 20 条作品?
答:翻页被风控的典型表现。确认browser_fallback.enabled: true且headless: false,弹窗出现后手动完成验证,别急着关窗口。
问:下载到一半断了,要全部重来吗?
答:不用。完整性校验会自动跳过已完成的文件,只补缺失部分;速度偏慢可把thread调大到 8、retry_times保持 3。
问:批量下载时内存占用偏高?
答:把并发调小,如thread: 3,每次任务控制在 50~100 个作品分批执行,开跑前先确认磁盘余量。
上手路线:从第一次试水到常用工具
- 先用单条试水:从最简单的视频链接开始,跑通"克隆—扫码—配置—运行"全链路,确认环境没问题;
- 再挑战整页批量:选一位你真正喜欢的创作者,用
post模式搬回最近 50 个作品,体验并发下载的爽快感; - 最后按需升级:开启增量去重、时间截取、直播录制和评论采集,让工具跟着你的使用习惯长大。
不习惯命令行的话,项目还配套了基于同一套后端的桌面客户端:粘贴链接即可开始下载,关注列表同步、进度可视化,适合开箱即用。
桌面版客户端:粘贴链接、检测内容类型,勾选作品/喜欢/合集即可开始
真正有价值的内容,值得一个可靠的"家"。与其一次次手动保存、忍受水印和乱码文件名,不如现在打开终端,花几分钟把 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
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考