douyin-downloader 入门实战:30 分钟把抖音作品、原声音乐和封面批量搬到本地
douyin-downloader 入门实战30 分钟把抖音作品、原声音乐和封面批量搬到本地【免费下载链接】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上个月整理手机相册时我发现一位舞蹈博主的教学视频整整占了两个多 G 的空间而真正想长期保存的内容远不止这些。逐个长按保存既带着水印又丢掉了背景音乐和封面图。朋友随后甩给我一个开源项目 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 及以上版本。若之后要用浏览器兜底或自动获取 Cookie再补一句pip install playwright python -m playwright install chromium即可先不装也不影响主流程。接着复制一份配置模板并获取登录 Cookiecp config.example.yml config.yml python -m tools.cookie_fetcher --config config.yml运行第二条命令后会自动弹出浏览器你用手机扫码登录抖音回到终端按回车Cookie 就会被自动写入config.yml。这是官方推荐的安全方式——Cookie 只保存在本地不会上传到任何服务器。然后编辑config.yml把link换成你想下载的任意抖音视频链接link: - https://www.douyin.com/video/7604129988555574538 path: ./Downloaded/ music: true # 同时下载原声音乐 cover: true # 同时下载高清封面 json: true # 保存作品元数据最后运行python run.py -c config.yml盯着终端你会看到进度条、文件统计和保存路径——这就是你的第一个无水印下载任务。短链https://v.douyin.com/xxx也一样能被自动解析。一次下载背后工具替你做了哪些事跑通之后值得花一分钟看看这条命令背后发生了什么这决定了你后面能放心下载多少内容无水印优先 最高清自动挑选自动选择无水印视频源并基于码率数组挑出最高码率的那个。失败自动重试按 1 秒、2 秒、5 秒的指数退避策略重试下载中断的文件会自动清理并补下。SQLite 双重去重数据库记录 本地文件双重校验同一作品不会重复下载完整性比对失败还会自动重来。附加资源一并保存除了视频本身还能独立保存背景音乐、封面图、作者头像和完整 JSON 元数据点赞、评论、话题、时长等。链接类型覆盖广单个视频、图文/note/、合集/collection/、音乐/music/都支持短链也认。项目内还附带了一个桌面客户端 Douzy目前内测中粘贴链接即可开始同步关注列表能可视化跟踪每个下载任务的实时进度批量搬空一位创作者的主页从链接到归档目录下载单个视频只是热身。当你遇到一个值得全量收藏的创作者时把link换成他的主页地址再声明模式与数量link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx mode: - post # 下载主页作品 - like # 下载他的点赞作品 - mix # 下载合集 - music # 下载原声音乐 number: post: 50 # 最近 50 个作品0 表示全量post、like、mix、music四种模式可以同时启用跨模式会自动去重——同一个作品在不同模式下只下载一次。如果你只想追某个时间段的内容配上start_time和end_time就能只抓指定日期区间发布的作品。下载完成后文件会按作者归档结构清晰Downloaded/ └── 创作者A/ └── 2024-06-15_作品标题_awemeid/ ├── video.mp4 # 无水印视频 ├── music.mp3 # 背景音乐 ├── cover.jpg # 封面图片 └── info.json # 作品元数据这套目录的命名规则也完全可定制在config.yml里改filename_template和folder_template即可支持{date}、{title}、{id}、{author}等变量用folderstyle: true开启按作品建子目录。让下载跟上更新增量下载只追新作品第一次全量下载完成后如果隔几天想补最新的内容不需要重新扫一遍。打开增量开关increase: post: true # 只下载新增作品 database: true # 增量依赖数据库记录务必保持开启再次运行python run.py -c config.yml工具会比对数据库里已有的作品 ID自动跳过旧内容只拉新发布的。这个习惯配合每周跑一次的节奏就能让你的本地素材库一直保持新鲜而不用重复耗费流量。再进一步直播录制、评论采集与热搜榜工具的能力不止于作品下载。想录一场直播把链接换成直播间地址即可link: - https://live.douyin.com/123456789 live: max_duration_seconds: 3600 # 0 表示录到主播下播录制中的 FLV 文件保存在Downloaded/{作者}/live/下哪怕中途断网或被 CtrlC 打断已录制的数据也会被保留。注意 HLS 源目前只保存播放列表文件需要自己用 ffmpeg 转码。另外两个轻量功能也很实用在comments配置里开启enabled: true每个作品旁会生成一份*_comments.json评论数据想快速了解抖音当前热点直接跑python run.py --hot-board 30 -p ./Downloaded python run.py --search 猫咪 --search-max 100 -p ./Downloaded热搜榜和关键词搜索结果都会导出成 JSONL 文件方便后续分析。详细的配置项说明可以查阅 README.zh-CN.md 和 config.example.yml。最容易踩的 3 个坑我替你试过了坑一Cookie 过期下载报 403 或未登录。Cookie 有效期通常只有 7~15 天遇到这类错误重新执行一次python -m tools.cookie_fetcher --config config.yml扫码刷新即可别手动乱填浏览器里的 Cookie格式很容易出错。坑二批量下载只抓到 20 条就停了。这是抖音翻页风控的典型表现不是工具坏了。确认config.yml里浏览器兜底是开着的browser_fallback: enabled: true headless: false浏览器窗口弹出后手动过一下验证码不要立刻关掉等它继续翻页抓完。坑三收藏夹模式有使用限制。collect/collectmix只对当前已登录 Cookie 对应的账号生效而且必须单独使用不能和post/like混着开increase增量也只支持post/like/mix/music四种模式收藏夹不支持增量截断。看到配置不生效时先回来核对这一条。下一步行动清单现在你可以按这份清单开始搭建自己的抖音素材库克隆项目、装好依赖用cookie_fetcher扫码拿一次 Cookie先下载单个视频验证环境再尝试批量下载一位创作者的主页作品打开folderstyle和命名模板让归档目录一眼可读开启increase.post把每周补一次新作品变成固定动作给常看的博主录一场直播体验一把实时录制。最后多说一句这些内容请仅用于个人学习、研究或备份尊重创作者别拿去做二次传播或商用。工具只是把选择权交回到你手里怎么用由你决定。【免费下载链接】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),仅供参考