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-downloaderdouyin-downloader 是跑在本地的抖音视频批量下载工具贴一个博主主页链接就能把作品、封面、背景音乐整批归档进硬盘全程数据不经第三方。适合想给关注列表建一份私人内容库的新手。 第一次从克隆仓库到第一批文件这一章按时间顺序走完整个流程装环境、拿登录态、写配置、跑任务、验结果。先确认 Python 版本在 3.9 以上运行python --version查看然后克隆仓库、装依赖顺手把示例配置复制一份git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader python -m pip install -r requirements.txt cp config.example.yml config.yml接下来是新手最容易卡住的一环登录态。抖音的多数接口要带一份叫 Cookie 的凭证才能调通你可以把它理解成已登录的通行令牌。项目自带的 Cookie 提取脚本 会弹出一个浏览器窗口你扫码登录一次它就自动把 Cookie 存到本地并写回配置不会上传python -m tools.cookie_fetcher --config config.yml不想装浏览器组件的话也可以从浏览器 DevTools 里手动复制 Cookie粘贴进config.yml的cookies字段两种写法都能识别。然后编辑config.yml最简版本长这样改两行就能跑link: - https://www.douyin.com/user/YOUR_SEC_UID # 换成目标博主主页 path: ./Downloaded/ # 保存目录不存在会自动创建 number: post: 1 # 先下 1 条验证没问题再改成 0不限 thread: 5 # 并发线程数link支持主页、单条视频、合集链接可以写多条。保存配置后执行python run.py -c config.yml跑完后打开Downloaded/验收。文件按作者名/post/发布日期_标题_作品ID/三层组织每个作品一个独立文件夹视频是 mp4打开封面、音乐、JSON 开关时还会多对应的 cover.jpg、music.mp3 和 data.json。两条同名作品靠文件夹名里的作品 ID 区分不会互相覆盖。下图是项目桌面版的抖音选项页CLI 与它共用同一套归档与去重逻辑常用配置字段速查配置项不少日常只用得着下面这几行字段作用建议值link要处理的链接主页、单条视频、合集都认整站备份就填主页链接path保存目录不存在会自动创建指向一块专门的备份盘mode主页链接时选内容类型作品/喜欢/合集默认postnumber.post单个主页最多下几条0 表示不限先设 1~5 验证再改 0increase.post增量开关跳过已下载的作品长期备份设trueredownload_missing_files增量时磁盘文件丢失是否重新下载保持默认truestart_time/end_time按发布日期过滤格式YYYY-MM-DD用范围控制磁盘占用thread并发线程数即同时下载几条默认 5retry_times单条失败后的自动重试次数3网络差可调高database是否把下载记录写进本地 SQLite 库保持true 第二次只补新内容全量备份跑完日常只剩补新这一件事。做法是把increase.post保持为true然后重跑同一条命令。增量下载的判断依据是磁盘上的主文件本地已有非空视频就跳过文件缺失或大小为 0 会重新下载由redownload_missing_files控制。注意它看的是文件而不是数据库所以想整批重下时把increase.post改成false即可不必清库。与此同时database: true会把每条作品的作者、发布时间、保存路径写进本地 SQLite 库dy_downloader.db每次任务还追加一条下载历史。我到底存过哪些作品从此一条查询就能答不用翻文件夹。全量跑完之后的日常就只剩这一步。 长期让它自己跑定时任务macOS 和 Linux 上给 crontab 加一行每天自动跑0 2 * * * cd /path/to/douyin-downloader python run.py -c config.yml配合增量开关凌晨只补新发布的作品早上看结果就行。完成通知大任务不必守在屏幕前。config.yml里的notifications段打开后任务成功或失败都会推送providers支持 bark、telegram、webhook 三类渠道具体写法看 config.example.yml 末尾的示例。数据复用把json: true打开后每个作品目录会多一份 data.json作者、发布时间、标题、标签都是结构化字段直接导入表格或笔记软件就能做内容盘点。Downloaded/download_manifest.jsonl是追加式清单每行一条作品记录方便写脚本统计。下载历史都在本地 SQLite 里随时可查。避坑问答现象任务大面积失败日志反复提示登录无效。原因Cookie 缺失或已过期。 解决重新运行python -m tools.cookie_fetcher --config config.yml让它重新抓取并写回不要手改已有字段的拼写。现象主页有几百条实际只下到几十条。原因number.post没放开、时间范围截断了内容或接口翻页受限。 解决先核对number.post是否为 0、start_time/end_time是否过窄仍不完整时保留browser_fallback.enabled: true在弹出的浏览器里手动完成验证让兜底方案补齐。现象两条同名作品只剩一个文件夹。原因自定义命名模板时去掉了作品 ID两条同标题作品写到了同一处。 解决保持默认的filename_template和folderstyle: true命名会自动带作品 ID别手动简化。现象跑到一半报 no space任务中断。原因全量拉取体量大且反复扫同一段范围。 解决用start_time/end_time限定时间段或把number.post调小分批之后打开increase.post后续运行只下增量。现象中途断网成功了一半需要整批重跑吗原因网络波动导致部分作品失败。 解决不用重跑工具按作品逐个落盘直接再执行一次命令已存在的文件会跳过调高retry_times还能减少这类中断。最后说清使用边界这套下载能力只适合个人学习、内容备份和研究场景请尊重创作者的版权与劳动成果不要用于商业盈利或任何侵权用途。内容一旦离开平台存储、使用都归你负责合规地使用工具才能用得长远。【免费下载链接】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),仅供参考