抖音批量下载神器 douyin-downloader 完全指南:3 步跑通首次下载,主页合集无水印搬回家
【免费下载链接】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就是为这个时刻准备的抖音批量下载工具——一条命令拉取无水印源,自动归档、自动去重,直播和评论还能顺手一起带走。
能力速览:这个工具到底能干什么
一句话讲清:你给它一个链接,它还你一份本地档案。核心能力有 5 条:
- 无水印高码率:自动挑选最高码率源,画质不打折
- 批量拉取:博主主页、点赞、收藏、合集、音乐,数量不限
- 直播录制:下播、断流时已录数据完整保留
- 去重与增量:SQLite 数据库 + 本地文件双重去重,重跑只抓新增
- 数据与集成:评论采集、热搜导出、REST API、完成通知、桌面版 Douzy
3 步跑通首次下载
装环境:两条命令 2 分钟
Python 3.8+ 即可,任何系统都能跑:
git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt这一步的作用:把源码拉下来并装好全部依赖,正常网络 2 分钟左右。之后如果要启用浏览器兜底(翻页风控时的救命能力),再补一句pip install playwright和python -m playwright install chromium。
一键获取 Cookie:唯一的硬门槛
cp config.example.yml config.yml python -m tools.cookie_fetcher --config config.yml人话版:脚本自动弹出浏览器让你登录一次抖音,回到终端按回车,Cookie 就写进config.yml了,全程不用手动复制粘贴。我顺手验证了一遍,这是整个流程里唯一需要人工参与的环节。
填链接跑首次下载:2 分钟看到进度条
打开config.yml,把链接填进link、number.post改成 5 先试水,然后运行python run.py -c config.yml,终端会实时滚动进度条。
核心能力详解
无水印下载单条作品:视频、图文、短链全通
能干什么:贴一条视频、图文或分享短链,拿到无水印源并自动选最高码率。
怎么配置:config.yml里只需一行link: https://www.douyin.com/video/7604129988555574538;https://v.douyin.com/...短链会自动展开,不用手动解析。
效果与产物:文件按"作者 → 作品类型 → 日期_标题_aweme_id"三层归档到Downloaded/,目录里同时放着视频、_cover.jpg封面、_music.mp3原声和_data.json元数据,4 类产物一次到位。
主页批量下载:博主作品一次搬空
能干什么:贴主页链接,遍历该博主全部已发布作品,视频和图文通吃。
link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx mode: - post number: post: 0 # 0 = 不限数量 thread: 5这一步的作用:number.post: 0表示不限量,thread是并发数(默认 5,失败按 1s/2s/5s 指数退避重试)。实测一个 274 条作品的主页,API 翻页被风控时,策略源码 里的浏览器兜底会自动弹出页面继续滚动,验证码手动过一下即可。
增量追更:只抓新增内容
能干什么:全量备份过一次后,后续每次运行都跳过已下载内容,只抓新作品。
increase: post: true database: true人话版:工具本地维护一个dy_downloader.db,靠"数据库记录 + 本地文件"双重比对去重,重复跑同一份配置的请求成本几乎为零。配合start_time/end_time还能只抓某段时间窗内的作品。
直播录制:下播自动收工
能干什么:录制正在进行的直播,主播下播或中途断流,已录数据都会完整保存。
link: - https://live.douyin.com/123456789 live: max_duration_seconds: 0 # 0 = 录到主播下播这一步的作用:工具会解析直播流并列出清晰度档位,录制成 FLV。产物落在Downloaded/作者/live/下,附带_room.json直播间元数据快照;中途 Ctrl+C 也没关系,已录字节会自动提升为正式文件。
组合实战:三个串起来就能用的配置
用法一:点赞 + 收藏 + 评论,一次把历史内容本地化
mode: - like - collect number: like: 0 collect: 0 comments: enabled: true max_comments: 500这一步的作用:把你点赞过、收藏过的作品全部搬回本地,每个作品旁额外输出独立的_comments.json(最多 500 条)。注意collect只支持当前登录账号,建议第一次先只开like跑通再叠加。
用法二:合集 + 音乐整包入库,跑完直接推送
link: - https://www.douyin.com/collection/7341234567890123456 - https://www.douyin.com/music/7341234567890123456 notifications: enabled: true on_success: true这一步的作用:第一条拉整个合集,第二条优先下原声音乐文件(缺失时自动回退到该音乐下的首条作品);任务完成后 Bark / Telegram 直接推送到手机,终端可以先关。
用法三:热搜 + 关键词搜索当数据雷达
不下载媒体,只导数据:python run.py --hot-board 30 -p ./Downloaded抓当天热搜前 30 条,python run.py --search "猫咪" --search-max 100 -p ./Downloaded按关键词搜作品,两者都落成 JSONL 文件,任何文本工具都能分析。
问题自查:遇到卡点先看这里 ⚡
现象:只能抓到 20 条作品。原因:API 翻页被风控截断。解决:确认配置里browser_fallback.enabled: true且headless: false,浏览器弹窗出现后手动过验证码,别急着关窗口。
现象:想重下某条视频,却总显示"跳过"。原因:数据库记录 + 本地文件双重去重。解决:sqlite3 dy_downloader.db "DELETE FROM aweme WHERE aweme_id = '<aweme_id>';"删掉数据库记录,同时删掉同名本地文件夹,两边都清才会重新下载。
现象:Cookie 过期,请求全部失败。原因:登录态失效。解决:重跑python -m tools.cookie_fetcher --config config.yml重新获取,不需要手抄 Cookie 字符串。
现象:进度条疯狂刷屏。原因:日志没静默。解决:配置里加progress.quiet_logs: true;调试时才临时加--show-warnings或-v。
进阶玩法
🔌跑成 REST API:pip install fastapi uvicorn后执行python run.py --serve --serve-port 8000,向/api/v1/download提交{"url": "..."}即可异步排队下载,再查 job 状态,方便接自己的脚本或前端。
📲完成通知推送:在notifications.providers里填 Bark、Telegram 或 Webhook,批量任务跑完直接推结果到手机,多个 provider 会并发推送,单个失败不阻塞下载。
🖥️桌面版 Douzy:同一套后端的图形化客户端,粘贴链接、选择内容类型、在任务中心逐任务跟踪进度,适合完全不想碰终端的使用者。
功能速查表
| 功能 | 关键配置/命令 | 一句话说明 |
|---|---|---|
| 单条无水印下载 | link: 作品链接 | 自动去水印、选最高码率 |
| 主页全量备份 | mode: post+number.post: 0 | 不限数量搬空作品 |
| 增量追更 | increase.post: true | 只抓新增内容 |
| 点赞/收藏 | mode: like/collect | collect 需单独运行 |
| 合集/音乐 | /collection/、/music/链接 | 整包拉取,缺失自动回退 |
| 直播录制 | live.douyin.com/xxx+live.* | 下播自动保存 |
| 热搜/搜索 | --hot-board 30/--search 关键词 | 导出 JSONL |
| 评论采集 | comments.enabled: true | 输出_comments.json |
| Cookie 刷新 | python -m tools.cookie_fetcher | 一键自动获取 |
| 服务化 | python run.py --serve | REST API 集成 |
下一步建议
先把 3 步最小闭环跑通(2 分钟),再挑一个场景实战——追更博主的主页备份是最佳练手;用顺手之后,翻一翻 命令行入口 和 配置模板 的源码,发现问题欢迎到仓库提 Issue 或 PR。最后提醒一句:本工具适用于个人学习、研究与数据备份,请尊重创作者版权与平台规则,在合法合规范围内使用。
核心关键词:抖音批量下载;长尾关键词: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),仅供参考