
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 去重和浏览器兜底。适合需要批量归档抖音内容、且希望过程可重复、可脚本化的人。 快速上手douyin-downloader 安装、配置、Cookie 获取与首次运行第一步装环境先准备 Python 3.8。下面命令克隆仓库并安装依赖最后一行是可选的只有你要用浏览器兜底翻页被风控时或自动取 Cookie 时才需要。git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt pip install playwright python -m playwright install chromium # 可选第二步复制配置并获取 Cookie先复制示例配置再运行内置的 cookie_fetcher它会弹出一个真实浏览器你登录抖音后回终端按 EntermsToken、ttwid 等字段会被自动写进 config.yml不用自己从浏览器开发者工具里抄。cp config.example.yml config.yml python -m tools.cookie_fetcher --config config.yml第三步首次运行打开 config.yml填三个字段link先贴一条视频短链即可、path下载目录、mode如 post 表示作品然后运行python run.py -c config.yml成功的样子终端进度条跑完后Downloaded/里出现任务目录单个视频是一个「发布日期_标题_aweme_id」命名的子目录里面有去水印的 .mp4、封面 .jpg、原声 .mp3 和 _data.json 元数据。项目同一套后端还带一个内测中的桌面版 Douzy把任务状态可视化方便盯每一条链接任务的成败 常用目标从单条视频到整站归档单条视频、图文的无水印下载把 v.douyin.com 短链或 /video/、/note/ 页面链接直接放进link短链会自动解析。视频落在Downloaded/作者/post/下从 bit_rate 数组里自动挑最高码率一个源失效就换下一个图文按顺序存为一组 .jpg。批量下载一个创作者的主页作品把 /user/ 主页链接放进linkmode: [post]number.post: 0表示全量写数字则限量mode可叠加 like、mix、music同一个 aweme_id 跨模式只下一次。start_time/end_time可按发布时间过滤increase.post: true让下次运行只抓新作品。每个作品按发布日期前缀单独建目录根目录还有一份 download_manifest.jsonl记录每件的日期、标签和文件清单方便后续统计。把一场直播留下来README 里直播录制仍标 experimental但常规场景可用把 live.douyin.com/房间号 放进link程序从流列表里挑清晰度最好的源。录制存在Downloaded/作者/live/下附带 _room.json 直播间快照主播下播、网络空闲或手动 CtrlC 时已录的字节都会保留。注意 HLS 源只存 playlist 文件要用 ffmpeg 再合一遍FLV 可直接播放。采集评论、热搜与搜索数据comments段开启后按作品抓评论include_replies: true会连二级回复一起拉在媒体文件旁存{日期}_{标题}_{aweme_id}_comments.json。热搜和搜索不下载媒体--hot-board 30把热搜榜快照导到Downloaded/hot_board/--search 关键词把结果按 JSONL 存进Downloaded/search/一行一条记录直接进脚本分析。谁在用三个日常场景做参考素材库的设计师。处境是每天要攒几条参考视频原来手机录屏再手动剪水印画质还常卡 720P。现在把几个创作者主页写进配置用 increase.post 每天定时跑新作品无水印、最高码率落盘文件按创作者和日期排好录屏加清理的时间从每天一个半小时变成看一眼终端输出。盯竞品的内容团队。需要盯 8 个竞品账号的更新节奏原来靠同事每天手动翻主页记表格。现在配置里挂 8 个主页每周跑一次number.post: 50够覆盖两周更新量发布时间、文案、#标签都写在 download_manifest.jsonl 里周报数据直接从这个文件出人工盯梢从每周两小时压成跑一次脚本。建评论语料的研究组。研究对象是某话题下的评论区原来靠手动刷评论一天导出几十条。现在--search 关键词先拉一批作品comments.enabled: true加include_replies: true把一二级评论一起抓整套数据是结构化 JSON 和 JSONL日样本量从约 30 条到几百条字段稳定可以直接写分析脚本不用再清洗。为什么这样设计三个核心模块下载流程统一在 core/downloader_base.py选源候选、无水印源优先、重试、Content-Length 完整性校验都在基类视频、合集、直播、音乐各自的下载器只管「源从哪来」「存什么」。这样某个源失效时只在基类的候选链里加一项不用多处改动。core/user_modes/ 下每个模式是独立策略类post、like、mix、music 的翻页逻辑完全不同各自注册进 core/user_mode_registry.py。新增模式只加一个策略类不动主下载流程这也是 mode 可以在配置里随意组合的原因。去重是数据库加文件系统的双重保险由 storage/database.py 与 file_manager 配合SQLite 的 aweme 表记下载历史程序同时扫描本地文件名里的 aweme_id。就算库文件丢了重跑也不会重复下载同一作品增量模式「只抓新作品」也建在这套记录上。⚙️ 调优真正影响体验的几个配置项批量下载慢或个别作品反复超时。改哪里thread默认 5按带宽调到 8–12网络走代理时补上proxy。 预期效果吞吐上去重试队列排空更快总时长不再被个别慢链接拖住。翻页只拿到 20 条就停。改哪里browser_fallback.enabled设为 trueheadless设为 false。 预期效果程序拉起可见浏览器继续翻页你手动过完验证码后自动续抓全量不用重跑任务。进度条和日志刷得终端看不清。改哪里保持progress.quiet_logs: true默认开调试时才临时加--show-warnings或-v。 预期效果终端只剩进度条和任务摘要需要时能看到真实 warning。⚠️ 避坑四个容易踩的问题抓作品停在 20 条。症状是作品数总在 20 附近重跑也一样原因是平台翻页风控接口分页在 20 条后被截断处理是启用 browser_fallback 且 headless 设为 false浏览器弹出后手动过验证码别立刻关窗。请求突然全部要求登录。症状是接口返回需登录或作品数据为空原因是 config.yml 里的 ttwid、msToken 过期处理是重跑python -m tools.cookie_fetcher --config config.yml刷新 Cookie。重跑却不下重新下载。症状是文件删了重跑仍显示跳过原因是去重双重判断只删库不删文件时程序会从本地文件名里认出 aweme_id 仍然跳过处理是删掉作品目录同时用 sqlite3 删掉对应的 aweme_id 记录再重跑。直播文件播不了。症状是录制文件已保存但播放器打不开原因是拿到的是 HLS 源只存了 playlist 文件处理是用 ffmpeg 合并出可播放文件或换提供 FLV 的直播间FLV 可直接播放。配置细节看 README.zh-CN.md 里的「关键配置项」和「典型场景」两节遇到接口变更或风控问题先去仓库 issue 列表查有没有同类记录。上手建议先拿一条视频链接跑通、确认目录结构再把一个创作者主页加上number.post: 5试批量整个流程十分钟以内。【免费下载链接】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),仅供参考