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 分钟跑通第一次下载
这一阶段只做三件事:装环境、配认证、下第一条链接。走完一遍,整个工具的运行逻辑你就摸清了。
安装依赖与目录说明
在终端里依次执行下面三条命令:
git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader/douyin-downloader pip install -r requirements.txt需要 Python 3.8 及以上版本,Windows、macOS、Linux 都能跑。克隆完成后,主程序位于仓库内的同名子目录里,之后的命令都切换进这个目录再执行。
如果后面想解锁"自动获取 Cookie"和"翻页受限时浏览器兜底"这两项能力,再补装一次 Playwright 即可,这步不着急:
pip install playwright python -m playwright install chromium最小配置长什么样
在程序目录下复制一份配置,然后改成自己的链接:
cp config.example.yml config.yml最精简的可用配置只有几行:
link: - https://www.douyin.com/video/1234567890123456789 path: ./Downloaded/ music: true # 连原声一起存 cover: true # 连封面一起存 json: true # 附一份元数据 JSON认证这一关,先拆掉拦路虎
下载器需要登录态才能稳定工作,手动从浏览器开发者工具里翻 Cookie 是最劝退的一步。这个项目把整件事自动化了——运行下面这条命令,它会自动弹出浏览器:
python -m tools.cookie_fetcher --config config.yml你在弹出的窗口里正常登录一次抖音,回到终端按一下回车,认证信息就被写进配置文件了,全程不用碰任何技术细节。它同时支持三种 Cookie 提供方式:自动获取、粘贴整串 Cookie 字符串、或按键值对填写,任选其一即可。
第一条下载命令
认证就绪后,直接运行:
python run.py -c config.yml也可以用-u参数临时指定链接,不必每次改配置:
python run.py -c config.yml -u "https://www.douyin.com/video/1234567890123456789"下载完成后,这个作品会自成一个小文件夹,里面包含视频本体、封面图、背景音乐和一份 JSON 元数据。短链(v.douyin.com/...开头的那种)也会被自动解析,不用先手动跳转。
阶段二:把核心能力逐个点亮
跑通第一次下载之后,接下来的批量搬运、直播录制、自动去重才是这个工具真正拉开差距的地方。
作者主页一键批量下载配置
想收藏一个创作者的全部作品,不用一条条复制链接。把配置改成作者主页链接,再告诉工具要哪些类型的内容:
link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx path: ./Downloaded/ mode: - post # 发布的作品 - like # 点赞过的作品 - mix # 合集内容 - music # 用过的原声 number: post: 50 # 发布作品下 50 条;0 表示不限量 like: 0 mix: 0 music: 0保存后直接python run.py -c config.yml。工具会自动按作者名建目录,把作品、点赞、合集、音乐分门别类存放,跑多久、下几个、成功几单都会实时打在屏幕上。
上图中它正在处理一位创作者的主页:自动抓到了 274 个作品,按时间范围筛选,5 个线程并发下载,已经存在的内容直接跳过。下载期间还会展示逐条进度,全部完成后统一给出成功数与用时统计。
默认并发数是 5,遇到网络好、作品多的情况,可以在配置文件里把thread调高,或者直接在命令行加-t 8临时提速。
直播录制参数设置方法
直播是典型的"错过就没了"的内容。工具支持直接把直播流录下来,配置里加上直播链接和录制参数即可:
link: - https://live.douyin.com/123456789 live: max_duration_seconds: 3600 # 最多录 1 小时;0 表示录到主播下播 idle_timeout_seconds: 30 # 长时间无数据则视为下播运行时它会先解析出直播流地址,自动读取标题、在线人数和清晰度选项,支持 FLV 与 HLS 两种格式。即使中途断网、主播提前下播,或者你手动按 Ctrl+C 中断,已经录下的内容也会被保留,不会出现录到一半全丢的糟心事。录制文件存放在Downloaded/作者名/live/目录下,并附带一份直播间信息快照。
下载去重与增量更新配置
批量下载最怕硬盘被重复内容塞满。工具内置了 SQLite 数据库加本地文件的双重检查:每下载一个作品前,先看数据库里有没有记录、硬盘上有没有同名文件,两边都没有才动手。想彻底放心,加上下面这段:
database: true # 开启数据库去重与历史记录 increase: post: true # 增量模式:只补新发布的内容 like: true mix: true开启增量后,它就像一位自带库存清单的仓库管理员,上次下到哪条记得清清楚楚,下次运行只挑新增的内容下载。配合规范命名,你的素材库能一直保持整洁有序。
每个作品单独一个文件夹,命名里带日期和标题,一眼就能定位。如果你对命名格式有偏好,还可以用filename_template自定义模板,比如{date}_{title}_{id},规则非常灵活。
阶段三:进阶开关与日常维护
基础玩法熟悉后,下面几个开关能让体验再上一个台阶,也顺手解决一些高频问题。
四个值得打开的进阶功能
① 下载完成自动通知:批量下载动辄几十分钟,不必干等。配好通知服务后,完成或失败都会推送到手机:
notifications: enabled: true providers: - type: bark url: https://api.day.app/YOUR_DEVICE_KEY除了 Bark,还支持 Telegram,以及企业微信、飞书、钉钉这类 Webhook 机器人地址。
② 热搜榜与关键词搜索:想追热点或按主题找内容,两条命令搞定,结果以 JSONL 格式导出,方便二次分析:
python run.py --hot-board 30 # 拉取热搜榜前 30 条 python run.py --search "猫咪" --search-max 100 # 关键词搜索最多 100 条③ REST API 服务模式:把下载能力包装成 HTTP 接口,方便集成进自己的系统:
pip install fastapi uvicorn python run.py --serve --serve-port 8000之后就能通过接口提交下载任务、查询任务状态,适合有自动化需求的玩家。
④ 评论采集:开启comments.enabled: true后,每个作品会额外生成一份*_comments.json,可含二级回复,做内容分析时很有用。
抖音下载常见问题排查
问:为什么只能抓到 20 条作品?这是抖音翻页风控的常见现象。确认配置里browser_fallback.enabled: true,浏览器窗口弹出后手动过一下验证码再放它继续跑,别急着关窗口。
问:Cookie 失效了怎么办?重新执行一次自动获取命令即可,几十秒就能恢复:
python -m tools.cookie_fetcher --config config.yml问:下载速度偏慢怎么优化?把配置里的thread从默认 5 调到 8,同时尽量在网络状况好的时段运行,体感差异很明显。
问:如何查看下载历史?数据库文件就在当前目录,用一条 SQL 就能统计各作者的下载量:
sqlite3 dy_downloader.db "SELECT author_name, COUNT(*) AS total FROM aweme GROUP BY author_name ORDER BY total DESC;"命令行嫌麻烦?试试同内核的桌面版
如果你对命令行天然不亲近,项目还基于同一套后端做了桌面客户端 Douzy,目前处于内测期。粘贴链接即可开始下载、任务状态一目了然、实时进度随时可看,文件命名规则也能在设置界面里直接配置。
命令行适合自动化,桌面版适合日常点选,两条路线共用一套内核,按自己的习惯选即可。
今天就能迈出的三步
工具本身不复杂,难的是动手。现在你只需要做三件事:
- 克隆项目并安装依赖(本文章节"安装依赖与目录说明"里的三条命令);
- 跑一次 Cookie 自动获取,完成身份认证;
- 挑一条你喜欢的视频链接,跑完第一次下载,感受"链接进、文件出"的痛快。
最后多说一句:把喜欢的内容保存下来,是很多人和这个世界的相处方式。愿你用这套工具,把自己珍惜的东西都稳稳留在硬盘里,想回看时随时都在。
【免费下载链接】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),仅供参考