ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

抖音批量下载工具快速上手:douyin-downloader 完整配置与实战指南

2026/8/15 2:39:17 拓冰建站 浏览量
抖音批量下载工具快速上手: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-downloader

凌晨一点,某自媒体运营对着浏览器挨个点开50个视频链接,复制、粘贴、另存为——这是他今晚的第四轮重复操作,屏幕右下角弹窗提示磁盘里已堆积了三个同名文件。同一时间,隔壁工位的同事用一条命令跑完了同样的工作,顺手把下载进度截图发进了工作群。差别只在于:他装了 douyin-downloader。

douyin-downloader 是一款开源的抖音批量下载工具,支持视频、图集、合集、音乐的无水印批量下载,并自动保存完整元数据。

如果你需要持续获取某个博主的全部作品、采集特定话题素材、或者只是想干净地存下几个视频而不是拖着水印——下面这份指南能让你在十分钟内跑通整个流程。

这个工具能做什么:能力总览

douyin-downloader 解决的不是"下载单个视频"这种小事,而是"长期、批量、有组织地管理抖音内容"这件事。它把下载过程中最容易翻车的环节全部自动化了:

能力具体表现
内容类型视频、图集、合集、音乐(原声)、直播录制
批量来源博主主页作品/点赞、当前账号收藏夹、合集、音乐、关键词搜索、热搜榜
去水印与画质优先无水印源,按 bit_rate 自动挑选最高码率
去重机制SQLite 数据库 + 本地文件双重去重,增量模式下只拉新作品
完整性校验Content-Length 比对,不完整文件自动清理重试
稳定性兜底翻页被限时降级到浏览器模拟,支持人工过验证码
附带资源封面、音乐、作者头像、JSON 元数据,可选评论采集与视频转写
自动化接口命令行、REST API、完成通知推送(Bark/Telegram/Webhook)

一句话概括:你只管把链接或博主主页地址交给它,剩下的解析、翻页、去重、命名、存盘全自动完成。

极速上手:5分钟跑通第一个下载任务

上手路径非常短,三步走完:装依赖、填配置、跑命令。

第一步:克隆项目并安装依赖

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.ymlconfig.yml,按下面这份精简版修改即可。注释已标明每一项的作用:

# 要下载的链接:单条视频/图文链接,或博主主页链接(后者做批量) link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx # 保存目录 path: ./Downloaded/ # 博主主页的批量模式:post=作品 like=点赞 mode: - post # 每个模式的下载数量,0 表示不限 number: post: 50 # 并发数与失败重试 thread: 5 retry_times: 3 # 开启 SQLite 去重,避免重复下载 database: true # Cookie:auto 表示自动抓取(推荐) cookies: auto

第三步:抓取 Cookie 并启动

# 自动登录并写入 Cookie(按提示操作即可) python -m tools.cookie_fetcher --config config.yml # 开始下载 python run.py -c config.yml

跑起来后,终端会显示实时进度条:哪些在排队、哪些已完成、哪些资源被跳过(已存在)。下载完成后,目录结构按"作者 → 作品类型 → 单条作品"组织,视频、封面、音乐、JSON 元数据各归其位。

分角色实战:三类典型用户的配置方案

内容创作者:批量收集对标账号素材

每天要盯几十个同行的更新,手动跟根本来不及。把他们的主页链接全部写进配置,一次跑完:

link: - https://www.douyin.com/user/博主A的sec_uid - https://www.douyin.com/user/博主B的sec_uid - https://www.douyin.com/user/博主C的sec_uid mode: - post - like # 同时抓作品和点赞,观察他们的选品逻辑 number: post: 100 like: 50 min_likes: 1000 # 只保留点赞过千的内容,过滤噪音

配合increase.post: true开启增量模式,每天只下载新增作品,相当于给竞品做了个"更新订阅"。

研究者:大规模语料与评论采集

做内容分析需要样本量,手动抓一万条不现实。用搜索和热搜榜把候选列表一次性导出为 JSONL,再按需批量下载:

# 按关键词搜索并导出前 100 条作品数据 python run.py --search "城市漫步" --search-max 100 -p ./研究数据/ # 拉取热搜榜前 30 条 python run.py --hot-board 30 -p ./研究数据/

对样本逐条采集评论时,在配置中打开评论开关:

comments: enabled: true include_replies: false # 需要二级回复再开,会额外增加请求 max_comments: 500 # 0 = 不限

每条作品会额外生成*_comments.json,与媒体文件放在同一目录。如果还想把视频转成文字稿做文本分析,打开transcript开关,指定 OpenAI 转写模型即可输出 txt 与 json 两种格式的转写结果。

运营人员:定时任务 + 完成通知

固定节奏的内容备份适合交给定时任务。Linux/macOS 下用 crontab:

# 每天凌晨 2 点跑增量下载,日志写入文件 0 2 * * * cd /path/to/douyin-downloader && python run.py -c config.yml >> download.log 2>&1

想让任务跑完自动通知你,在配置里加上推送渠道(支持 Bark、Telegram、企业微信/飞书/钉钉 Webhook):

notifications: enabled: true on_success: true on_failure: true providers: - type: bark url: https://api.day.app/YOUR_DEVICE_KEY - type: webhook url: https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxx

如果想把下载能力嵌入自己的系统,还可以用python run.py --serve --serve-port 8000启动 REST API 服务,通过 HTTP 接口提交下载任务并查询状态。

进阶配置速查:关键参数一览

配置项建议取值说明
thread5~10并发下载数,按带宽调整,过高反而触发限速
retry_times3~5失败重试次数,指数退避(1s/2s/5s)
proxyhttp://127.0.0.1:7890网络受限时配置代理
browser_fallback.enabledtrue翻页被限时降级到浏览器模拟
browser_fallback.headlessfalse非无头模式,便于人工过验证码
filename_template{date}_{author}_{title}_{id}自定义文件命名,支持 date/author/title/id/点赞数等变量
folderstyletrue按单条作品建子目录,文件更整洁
start_time/end_timeYYYY-MM-DD按发布时间过滤,留空表示不过滤
increase.post/like/mix/musictrue增量下载,只拉数据库中没有的新作品
databasetrue开启 SQLite 去重与下载历史
progress.quiet_logstrue静默进度阶段日志,减少刷屏

关于桌面版(Douzy):同一套后端还有一个桌面客户端正在内测,提供"粘贴链接即刻下载、关注列表同步、任务可视化"的图形界面。桌面版的下载、任务中心、作品档案界面如下:

命令行偏好者继续用run.py就好,两者共享同一套下载与去重逻辑。

避坑指南:四个最常见的翻车现场

问题一:下载到一半提示 Cookie 失效

Cookie 会过期,这是抖音批量下载工具最常遇到的状况。重新执行一次抓取即可:

python -m tools.cookie_fetcher --config config.yml

登录后回到终端按 Enter,程序会自动把新 Cookie 写回配置。

问题二:主页只能抓到 20 条作品

这是翻页风控的典型表现,不是工具坏了。确认配置里browser_fallback.enabled: truebrowser_fallback.headless: false,运行到翻页受限时会弹出浏览器,手动完成验证后再让它继续,不要急着关窗口

问题三:下载速度上不去

先看是不是并发设置过高——thread拉到 8 以上在网络一般时反而更慢,降到 5 试试。如果本地网络本身不稳定,加大timeout并配合代理proxy通常能显著改善成功率。

问题四:想重新下载某个作品,但它一直被跳过

这是去重机制在起作用:程序用"数据库记录 + 本地文件"双重检查判断是否已下载,两者都在就会跳过。强制重下需要同时清理:删掉本地对应文件目录,再从数据库删除该条记录:

sqlite3 dy_downloader.db "DELETE FROM aweme WHERE aweme_id = '<aweme_id>';"

只删数据库不删文件不会触发重下,反过来只删文件则会,记住这个规则就理解了它全部的"跳过"行为。

下一步行动清单

  • ✅ 克隆仓库并pip install -r requirements.txt,顺手装好 Playwright
  • ✅ 复制config.example.ymlconfig.yml,先用一条视频链接跑通全流程
  • ✅ 换成自己的博主主页链接,体验一次post模式批量下载
  • ✅ 按需开启增量下载、评论采集或通知推送,把工具纳入日常工作流

最后必须强调: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

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考