抖音批量下载教程: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
运营每周要归档三个对标账号:视频、图文、合集,外加每条评论。最耗时的不是下载本身,而是前后工序——链接逐条复制、去水印站点有每日限额、存下来的文件只剩一个 mp4,没有标题和发布时间,下次再跑还分不清哪些已经存过。douyin-downloader 就是为这类场景做的抖音视频下载工具:把链接写进一份配置文件,去水印下载、主页批量抓取、评论与元数据归档全部在本地完成。
🧭 两个入口:Douzy 桌面版与 Python 命令行
项目提供两条使用路径。Douzy 桌面版把粘贴链接、任务进度、本地作品档案放在同一个窗口,覆盖抖音、TikTok、YouTube、Telegram、X 等平台,从项目 Releases 页下载对应平台的安装包即可。想把流程写进脚本或长期跑在服务器上,用 Python 命令行版:支持批量下载、日期筛选、失败重试、下载历史,以及可选的评论采集、视频转写和完成通知。
有一点要先说清:受平台风控影响,CLI 目前对单个作品、合集、音乐等接口直连大多被拦截,主页作品依赖浏览器兜底,不保证成功;README 建议日常下载使用桌面版。本文以命令行版为主线展开。
📦 三条命令拿到无水印文件
环境要求 Python 3.9 以上,Windows、macOS、Linux 都支持。
git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader && python -m pip install -r requirements.txt第一道坎是登录。仓库自带 Cookie 获取脚本 tools/cookie_fetcher.py:它会拉起一个真实浏览器,你扫码登录抖音后回到终端按 Enter,Cookie 自动写进配置文件,不用手动复制粘贴。
cp config.example.yml config.yml python -m tools.cookie_fetcher --config config.yml python run.py -c config.yml把 config.yml 里的示例 link 换成目标账号主页就能跑。运行期还可用 -u 追加链接、-p 换输出目录、-t 调并发、-v 输出详细日志;启用浏览器兜底的话,先执行python -m pip install playwright && python -m playwright install chromium装好浏览器内核。
📂 四种抓取模式与数量怎么控
主页抓取分四种模式,由 mode 列表指定:post(发布的作品)、like(公开的喜欢)、mix(合集)、music(用过的原声)。number 段按模式限条数,0 表示全量,例如number.post: 100就只拿最新 100 条作品。
并发默认 5 路(thread),失败自动重试 3 次(retry_times),退避间隔按 1 秒、2 秒、5 秒递进,rate_limit 控制整体请求节奏。画质由 video_quality 决定:默认 highest 只从转码档里挑最高那一档;改成 original 会多一次探测请求去拿上传原片,找不到再退回最高转码档;也可以直接写 1440p、1080p、720p 等固定分辨率,匹配不到时自动降到最接近的可用档。
🗂️ 产物长什么样:目录、去重与历史
文件按「作者—模式—作品」三层落盘:默认 folderstyle 开启,Downloaded/ 下先分作者目录(默认用昵称,author_dir 可改成 sec_uid 保证唯一),再分 post、like 等模式层,每个作品一个文件夹,文件名模板默认{date}_{title}_{id},日期取作品发布时间。视频本体默认保存,封面、音乐、头像、作品 JSON 分别由 cover、music、avatar、json 四个开关控制。
去重走两层:SQLite 历史库 dy_downloader.db 加磁盘文件核对。increase 对 post、like、mix 等模式默认全开,第二次运行只补新作品,同一作品在 post 和 mix 里重复出现也只存一份。主文件在磁盘上丢失时,redownload_missing_files(默认 true)会触发补下;想强制重下就把对应 increase 设为 false,不用清库。输出目录还会生成 download_manifest.jsonl,每行一条下载记录,方便后续统计与核对。
🎯 运营场景:对标素材库怎么配
把两三个对标账号主页放进 link,同一份配置定期重跑,素材库就持续生长。increase.post 默认 true,第二次运行只抓新发布的作品;start_time / end_time(格式 YYYY-MM-DD,含结束日)用来框时间范围,防止文件量失控:
link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx path: ./Downloaded/ mode: [post, mix] number: post: 100 increase: post: true start_time: "2026-09-01" end_time: "2026-10-01"🎯 分析场景:评论与转写怎么开
需要数据而不只是文件时,打开两个开关即可。comments.enabled 让每个作品旁多出一份*_comments.json,max_comments 给单作品设上限(0 不限);transcript.enabled 把视频送去做语音转写,默认模型 gpt-4o-mini-transcribe,产出 .transcript.txt 和 .transcript.json,密钥从 OPENAI_API_KEY 环境变量读取。注意转写只对视频生效,图文作品会跳过:
comments: enabled: true max_comments: 500 transcript: enabled: true model: gpt-4o-mini-transcribe如果希望下载完成时手机收到提醒,notifications 段支持 bark、telegram、webhook 三类推送。
🩹 卡住、Cookie 失效、磁盘告急怎么解决
主页只抓到少量作品:保持 browser_fallback.enabled 为 true、headless 为 false,翻页被风控拦截时会自动弹出浏览器窗口,你在窗口里手动过完验证,抓取随即继续,别急着关。
Cookie 过期:重跑一次获取器python -m tools.cookie_fetcher --config config.yml即可,逻辑都在 tools/cookie_fetcher.py,需要时可以自行调整。
下载偏慢:把 thread 调低(例如 3)减轻请求压力,或调大 rate_limit 放慢节奏。
转写文件没生成:按顺序核对 transcript.enabled 是否为 true、作品是否为视频、OPENAI_API_KEY 是否有效。
磁盘空间吃紧:用 start_time / end_time 收窄范围或把 number 调小;删除旧作者目录后,记得同步清理 dy_downloader.db 里对应记录,避免历史库与磁盘状态错位。
douyin-downloader 的价值,在于把「复制链接—去水印—重命名—整理文件夹」压缩成一份配置文件:下载、去重、归档、历史查询都在本地发生,数据不出机器。平台风控会持续变化,保持项目更新、定期校验 Cookie,是长期稳定运行的前提。下载内容请仅用于个人学习、研究与备份,尊重创作者权益,不用于商业用途。
【免费下载链接】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),仅供参考