如何快速批量下载抖音作品:douyin-downloader 完整实战指南
如何快速批量下载抖音作品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 的抖音批量下载工具解决的核心问题有两类单条视频、图文、合集、音乐的快速无水印保存以及作者主页作品的完整或增量获取。程序默认内置并发下载、指数退避重试、SQLite 去重与文件完整性校验API 翻页受限时还能自动切换到浏览器兜底。下文按安装、配置、实战场景与进阶用法依次介绍每个环节都附上可直接改用的配置示例。它能做什么核心下载能力多类型下载视频、图文、合集mix、音乐原声都能处理v.douyin.com短链会自动解析视频源默认优先选择无水印地址。主页批量获取给出作者主页链接后按post/like/mix/music模式分别拉取作品各模式数量用number单独控制。去重与增量下载SQLite 记录加本地文件双重判断已下载内容自动跳过增量模式下重复运行只取新作品。元数据档案每个作品可附带封面、音乐、头像与 JSON 元数据输出统一写入下载清单download_manifest.jsonl评论也能随作品一并采集。快速安装与 Cookie 认证配置环境上只需要 Python 3.8 以上macOS、Linux、Windows 均可运行。克隆仓库后安装依赖git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt若计划使用浏览器兜底或自动获取 Cookie再补装可选依赖pip install playwright后执行python -m playwright install chromium。接着把config.example.yml复制为config.yml作为起点。Cookie 推荐用内置脚本获取运行python -m tools.cookie_fetcher --config config.yml浏览器打开后扫码登录抖音回到终端按 Enter认证信息会自动写入配置并保存在本地无需手动复制。全部就绪后用python run.py -c config.yml即可启动下载。核心功能详解批量下载、去重与元数据管理模式化批量下载主页链接配合mode字段决定抓取范围多个模式可同时勾选同一个作品在不同模式间不会重复落盘。number按模式设置数量上限0 表示不限制。start_time/end_timeYYYY-MM-DD格式可把范围收窄到指定时间段。SQLite 去重与增量下载开启database: true后下载记录默认写入dy_downloader.db实现见 storage/database.py。每次下载前程序先做“数据库记录 本地文件”双重检查两边都在则跳过文件缺失则重新下载。increase.post: true等增量开关让重复运行只取新作品适合定期维护资料库。除媒体文件外还会追加写入download_manifest.jsonl一行一条 JSON便于后续核对与统计。浏览器兜底机制API 翻页受限时典型现象是只能抓到 20 条左右作品程序会启动真实浏览器读取页面自己发出的作品列表请求继续翻页期间支持人工处理验证码。建议保持headless: false让窗口可见以便手动完成验证。max_scrolls、idle_rounds、wait_timeout_seconds控制滚动轮数、空闲判定与总超时可按网络状况调整。元数据与评论采集作品默认按“每作品一个子目录”组织folderstyle: true目录名由发布时间create_time渲染为日期_标题_作品ID形式日期取自作品发布时间而非下载时间。comments.enabled: true时按作品采集评论include_replies控制是否展开二级回复结果输出为*_comments.json。封面、背景音乐、头像、JSON 元数据各自独立开关默认只下载视频本体避免不必要的请求。真实使用场景与配置示例场景一归档特定作者的全部作品。把作者主页放入linknumber.post: 100表示取最近 100 条mix: 0表示合集全量link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx mode: - post - mix number: post: 100 mix: 0若担心昵称与他人重名导致目录合并把author_dir改为nickname_uid可获得唯一且直观的作者目录。场景二定期增量收集关注账号。同一份配置周期性运行去重机制自动跳过已下载内容资料库随时间累积而不产生重复文件link: - https://www.douyin.com/user/MS4wLjABAAAAyyyy mode: - post increase: post: true database: true start_time: 2025-01-01场景三主题作品与评论采集。搜索接口把结果存成带时间戳的 JSONL 文件配合评论开关可以沉淀某个话题下的热门作品及其讨论python run.py --search 咖啡探店 --search-max 100 -p ./Downloaded需要某个时点的热门快照时--hot-board 30可导出热搜榜 JSONL用法与搜索一致。进阶功能用法通知、转写与 API 服务完成通知。notifications支持 Bark、Telegram、Webhook 三类通道并发推送成功或失败均可触发单个通道失败不会阻塞下载主流程适合无人值守的长任务。语音转写。transcript.enabled: true时视频下载完成后调用 OpenAI Transcriptions API默认模型gpt-4o-mini-transcribe在视频旁生成.transcript.txt与.transcript.json密钥通过环境变量OPENAI_API_KEY提供。注意图文作品不生成转写。REST API 服务。安装fastapi uvicorn后运行python run.py --serve --serve-port 8000可提交下载任务并轮询 job 状态方便接入自动化流水线。其他常用调优项thread并发数默认 5、video_quality画质档位原画 / 最高转码 / 指定分辨率、proxy代理地址所有默认值可在 config/default_config.py 中查看。常见问题与排查指南现象主页作品只能抓到 20 条左右。原因是 API 翻页被风控拦截。解决确认browser_fallback.enabled: true且headless: false浏览器窗口弹出后手动完成验证不要立即关闭窗口。现象单个视频、合集或音乐下载返回 403 / 风控提示。原因是抖音 Argus 风控自 2026 年 8、9 月起对这类接口的非浏览器请求一律拒绝CLI 直连无法携带所需签名。解决保持浏览器兜底开启主页作品翻页仍可能取到或改用桌面版 Douzy——它通过内置登录窗口代发请求不受此限制详见 README.zh-CN.md 的限制说明。现象下载中途登录态失效或请求异常增多。原因是 Cookie 超过有效期。解决重新执行python -m tools.cookie_fetcher --config config.yml刷新认证脚本源码在 tools/cookie_fetcher.py。现象进度条反复刷新、日志刷屏。原因是日志级别偏高。解决保持progress.quiet_logs: true静默进度阶段日志需要排查时再临时加--show-warnings或-v。开始使用三个立即可执行的动作先用单条视频链接跑一遍python run.py -c config.yml确认 Cookie 有效、目录结构与命名符合预期再扩展到主页批量任务。对需要长期跟进的作者主页开启increase与database并交给定时任务定期重跑资料库保持持续更新且无重复。需要沉淀完整档案时同时打开json、cover与comments并保留download_manifest.jsonl用于事后核对与导出。本工具适用于技术研究、学习交流与个人数据管理场景请在使用中遵守相关法律法规与平台规则尊重创作者的合法权益。【免费下载链接】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),仅供参考