
从手工逐个保存到一键批量下载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-downloader如果你想批量下载抖音视频、合集、音乐或录制直播又不想被各类在线解析站收割画质和隐私douyin-downloader 这款开源工具值得花十分钟了解一下。它把去水印下载、SQLite 去重、多线程并发、浏览器兜底打包成一个命令行工具加一套可选的桌面客户端下面这份体验记录会带你从零跑通第一个下载任务。一、先看一个真实的崩溃现场朋友阿哲做美食类自媒体每周要收集 50 条竞品视频做选题分析。他的工作流是这样的打开抖音网页版 → 逐个点开视频 → 等播放器加载 → 右键另存为 → 手写编号。周一下午三点开始周五下班前还在补周四欠下的 30 条。他不是没试过在线解析网站粘贴链接、等广告倒计时、下载下来发现是 720p 压缩版文件名还是乱码。更麻烦的是有些视频当天能下过几天就提示已失效等于白干。后来他把工作流换成了 douyin-downloader同一批 50 条视频的耗时变化是这样的环节手工逐个保存douyin-downloader收集 50 条视频约 4 小时含网页加载等待10~15 分钟多线程并行命名整理手写编号出错率 30%按模板自动生成零手工重复下载经常重复保存同一视频SQLite 记录历史 文件名去重元数据全部丢失每条视频附带 JSON 元数据、封面、原声断点续传不支持失败自动重试跳过已存在文件阿哲的故事不是个例。无论你是要给自己喜欢的博主做备份还是研究团队要采集上千条样本核心痛点都是同一件事把重复劳动交给脚本把时间留给人。二、先说结论这个工具到底能给你什么在动手配置之前先看一眼最终成果你才知道自己要做的事值不值。命令行跑完一次批量下载后保存目录里长这样每一个作品一个文件夹里面是完整的一套无水印视频文件mp4封面图 cover.jpeg原声音乐文件作者头像 avatar.jpeg结构化元数据 result.json标题、作者、点赞、发布时间等这不是只给一个视频文件的裸下载而是把一条抖音作品的数字资产整体搬回了本地。命令行跑完时的统计界面长这样——成功数、耗时、保存路径一目了然能力对照表能做什么、不能做什么、替代品能力说明✅ 单视频/图文下载粘贴视频链接即可自动去水印✅ 博主主页批量下载一次性拉取全部作品或点赞列表✅ 合集、音乐、收藏夹对应不同下载模式配置里一行切换✅ 直播录制与回放命令行指定直播链接自动分段录制✅ 增量下载第二次运行只下新增内容❌ 下载付费/私密内容只有你能看到的内容才能下需要登录态❌ 绕过平台风控工具内置频率控制追求慢而稳不是黑科技破解替代品参考yt-dlp通用但抖音适配弱、在线解析站画质缩水隐私风险一句话它能做的是把合规且可访问的内容高效归档而不是破解任何限制。三、上手三件事克隆、装依赖、搞定 Cookie第一件把仓库拉下来git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader第二件安装依赖pip install -r requirements.txt # 如果要让工具自动帮你取 Cookie再装 Playwright pip install playwright playwright install第三件准备 Cookie三种方式任选Cookie 是访问抖音接口的通行证工具提供了三种配置方式按省事程度排序方式一自动获取推荐一条命令让浏览器帮你登录并生成配置python -m tools.cookie_fetcher --config config.yml方式二整串粘贴从浏览器开发者工具里复制完整 Cookie 字符串写进配置cookies: msTokenxxx; ttwidxxx; odin_ttxxx; ...方式三键值对填写最稳妥的方式字段拆开写cookies: msToken: YOUR_MS_TOKEN ttwid: YOUR_TTWID odin_tt: YOUR_ODIN_TT passport_csrf_token: YOUR_PASSPORT_CSRF_TOKEN sid_guard: YOUR_SID_GUARD三种方式的优先级是自动获取 整串 键值对配置里写一份就够了。四、第一次运行看它如何自己干活先写一份最小配置文件config.yml# 支持多个链接单视频、图文、用户主页都可以 link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx # 博主主页 # 保存目录 path: ./Downloaded/ # 下载附带内容 music: true # 下载原声音乐 cover: true # 下载封面 json: true # 保存元数据 # 主页批量下载模式post作品like点赞 mode: - post # 每个模式下载多少条0 表示全部 number: post: 50 # 并发与重试 thread: 5 retry_times: 3然后运行python run.py -c config.yml第一次跑的时候你会看到类似这样的进度界面注意几个细节它们正是这个工具聪明的地方先列清单再下载工具先解析主页拿到全部作品列表再排队下载所以启动阶段会有一小段获取作品数据中的等待属正常现象。已存在自动跳过批量进度里出现跳过已存在说明这次跑到了上次下过的文件去重机制在工作。失败自动重试单条失败会按retry_times重试重试还失败就跳过继续不会卡死整个队列。五、卡点解决四个高频问题的自救手册跑起来之后大多数人会遇到下面四个坎逐个说清楚怎么过。卡点一Cookie 失效提示需要登录Cookie 有有效期尤其是msToken。解决方式python -m tools.cookie_fetcher --config config.yml如果自动获取失败就手动登录网页版抖音从开发者工具重新复制整串 Cookie 覆盖配置。卡点二主页只能抓到前 20 条这是翻页风控的典型表现。开启浏览器兜底让工具用真实浏览器翻页browser_fallback: enabled: true headless: false # 非无头模式headless: false会弹出真实浏览器窗口遇到验证码时手动完成即可不要急着关窗口。卡点三下载速度慢多数情况是并发开太高反而被限速。两个方向调降低thread到 3~5配合加大retry_times检查网络必要时配置代理proxy: http://127.0.0.1:7890卡点四个别视频始终失败被删除、转私密、地域限制都会导致单条失败。工具会自动跳过继续跑排查时加 verbose 看详细日志python run.py -c config.yml --verbose六、从能下载到用得爽把工具调成你的形状模式决策树先想清楚你要下什么你的目标是 ├─ 备份某个博主的全部作品 → mode: post ├─ 备份某人的点赞列表 → mode: like ├─ 保存整个合集 → mode: mix合集 ├─ 批量下载音乐原声 → mode: music ├─ 录制直播/回放 → 直播链接 live 配置 └─ 话题研究、素材收集 → --search 关键词 或 --hot-board 热搜榜一个配置里可以同时写多个模式比如作品 点赞一起下mode: - post - like number: post: 100 like: 50进阶配置一文件命名与目录组织默认文件名模板是{date}_{title}_{id}可以按需改# 可用变量date, author, title, id, like_count, comment_count filename_template: {date}_{author}_{title}_{id} # 作者目录命名nickname / uid / nickname_uid author_dir: nickname_uid # 每个作品单独建子目录 folderstyle: true进阶配置二过滤条件只下想要的# 时间过滤 start_time: 2024-01-01 end_time: 2024-12-31 # 直播录制时长上限0录到下播 live: max_duration_seconds: 3600 idle_timeout_seconds: 30直播录制跑起来是这样的——工具会解析出直播间信息、清晰度选项和流地址选好清晰度后自动开录进阶配置三评论采集与 AI 转写需要研究互动数据时打开评论采集comments: enabled: true include_replies: false # 是否拉每条评论的二级回复 max_comments: 500 # 0不限 page_size: 20需要给视频生成文字稿时启用转写transcript: enabled: true model: gpt-4o-mini-transcribe response_formats: - txt - json api_key_env: OPENAI_API_KEY进阶配置四搜索、热搜与 REST API不想手动填链接直接用关键词拉数据# 按关键词搜索作品并导出 JSONL python run.py --search 猫咪 --search-max 100 -p ./研究数据/ # 拉取抖音热搜榜 python run.py --hot-board 30 -p ./研究数据/想集成到自己的系统里工具还带 REST API 服务模式python run.py --serve --serve-host 127.0.0.1 --serve-port 8000桌面版不想碰命令行的另一条路基于同一套后端项目还提供了一个叫Douzy的桌面客户端。它的作品档案页是 SQLite 数据库的可视化入口——按作者、标题关键词、类型、发布时间筛选历史下载记录还能批量导出或删除贴链接、检测类型、勾选要下的内容作品/喜欢/合集、启动任务全程鼠标操作下载进度在任务中心可视化跟踪。如果你是非技术用户桌面版是更友好的入口。七、一页速查卡命令与配置随查随用想做的事操作用配置文件下载python run.py -c config.yml直接传链接下载python run.py -u https://v.douyin.com/xxx/ -p ./Downloaded/关键词搜索导出python run.py --search 关键词 --search-max 100拉热搜榜python run.py --hot-board 30自动获取 Cookiepython -m tools.cookie_fetcher --config config.yml跑 REST 服务python run.py --serve --serve-port 8000开 verbose 日志python run.py -c config.yml --verbose常用配置项作用link下载链接列表可混放单视频/图文/主页mode: post/like/mix/music主页批量下载模式number各模式下载数量0全部thread/retry_times并发数与重试次数start_time/end_time时间过滤folderstyle/filename_template目录与文件命名browser_fallbackAPI 受限时降级到浏览器comments/transcript评论采集与 AI 转写live直播录制参数下一步按这三步跑通你的第一个任务克隆并安装执行开头那三行命令确认pip install -r requirements.txt无报错准备 Cookie 与最小配置先跑python -m tools.cookie_fetcher自动获取再照第一次运行里的模板填一份config.ymlnumber.post先设成 2 做冒烟测试验证成果再扩展确认下载的文件夹里视频、封面、JSON 齐全后再逐步放开数量、加上模式、打开增量下载最后按速查卡尝试搜索和直播需要提醒一句请只下载你拥有权限的内容尊重创作者与平台规则工具内置的频率控制本意就是让大家用得慢一点、用得久一点。抖音批量下载这件事从此不必再靠手点几百次右键了。【免费下载链接】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),仅供参考