
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 是一款开源免费的抖音批量下载工具把链接写进配置文件跑一条命令就能得到按作者和日期自动归档的去水印视频库。教程面向需要用真实素材、做选题调研或沉淀数据的新手照做完成后你能在本地拿到一个可直接检索的作品档案。能拿到什么一份按作者和日期归档的本地素材库跑完一轮任务磁盘上会出现以下几类文件位置和格式都是确定的去水印视频本体默认优先挑选无水印源并自动在bit_rate码率阶梯中选最高档示例配置默认只保存视频本体附带资源按开关开启cover: true出封面_cover.jpg、music: true出音乐_music.mp3、avatar: true出作者头像、json: true出作品元数据_data.json评论数据开启comments.enabled: true后每个作品旁多一个*_comments.json可选带二级回复直播录制文件存于Downloaded/{作者}/live/FLV 文件外加*_room.json直播间元数据快照记录与索引dy_downloader.dbSQLite登记每次下载历史下载目录下另有一份download_manifest.jsonl热搜与搜索快照--hot-board/--search的结果落成hot_board/、search/子目录下的 JSONL默认folderstyle: true且group_by_mode: true文件落在Downloaded/作者名/post/2024-02-07_标题_aweme_id/这样的路径里每个作品一个子目录文件名带{id}不会互相覆盖。同一套后端还提供了一个桌面客户端 Douzy内测中上图是它main构建的任务中心界面可看到每个任务的成败状态与重试入口。命令行模式的对应信息在终端结尾输出成功、失败、跳过三组计数一次列清。准备工作三条命令装好一条命令配好 Cookie本节做完后python run.py --version能输出版本号环境即就绪。最小可跑Python 3.8 以上macOS / Linux / Windows 均可git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt cp config.example.yml config.yml python run.py --versionCookie 认证抖音网页靠 Cookie 识别访问身份基本下载需要有效 Cookie收藏夹等登录态功能则需要已登录的 Cookie。推荐自动方式——命令会打开一个浏览器窗口扫码登录后回到终端按回车Cookie 直接写进 config.ymlpython -m tools.cookie_fetcher --config config.yml手动方式登录抖音网页版后从浏览器开发者工具复制整段 Cookie 字符串粘贴到配置文件的cookies字段主要键位是msToken、ttwid、odin_tt、passport_csrf_token、sid_guard。可选增强需要浏览器兜底和自动获取 Cookie 时补装pip install playwright再执行python -m playwright install chromium要容器化部署则用仓库自带的 Dockerfile 构建。按任务用三种入口对应三种目的挑出与目标匹配的卡片两分钟内就能拼好配置。单条视频下载一条链接跑通全流程目的用一条视频链接完成从解析到落盘的全链路拿到去水印 mp4。link: - https://www.douyin.com/video/7604129988555574538 path: ./Downloaded/python run.py -c config.yml跑完终端会给出成功 / 失败 / 跳过的统计。https://v.douyin.com/...这类分享短链会自动解析成真实地址。不想改配置文件时命令行参数可以直接补链接python run.py -c config.yml -u 视频链接 -t 8 -p ./Downloaded其中-u追加链接可重复、-t并发数、-p保存目录。Douzy 桌面客户端内测中同一后端把这个流程做成了粘贴链接、一键开始的工作台上图为其中抖音链接下载工作台的界面。主页与合集批量抓取mode 决定抓哪几类目的用一条作者主页链接一次抓回指定类型的内容跨模式自动按aweme_id去重。link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx mode: - post number: post: 0 # 0 为全量写 50 就是只抓前 50 条python run.py -c config.yml注意复制出来的示例配置里number.post默认是1先试一条跑全量前记得改成0或目标数量。再配start_time/end_time格式YYYY-MM-DD只会落在时间窗内的作品。内容类型与配置写法对照想抓的内容mode 写法备注作者发布的作品post最常用浏览器兜底也仅对它做了完整验证作者点赞过的作品like相当于作者的品味库作者的合集mix按主题整理作者用过的音乐music优先原声文件自己账号的收藏夹collect需登录 Cookie必须单独使用自己账号的收藏合集collectmix必须单独使用不能与其余模式混写collect/collectmix只对应 Cookie 所属的那个账号。Douzy 客户端为此场景单独做了关注管理视图同步创作者、筛选新作品从列表直接下载上图为该界面截图。直播、评论、热搜扩展能力速览目的直播存档、评论语料、热点追踪只换触发方式不用学一套新配置。能力触发方式产出直播录制link填live.douyin.com/{room_id}配live字段FLV *_room.json存于Downloaded/{作者}/live/评论采集comments.enabled: true每作品一份*_comments.json热搜榜python run.py --hot-board 30 -p ./Downloadedhot_board/下 JSONL可选 top-N关键词搜索python run.py --search 猫咪 --search-max 100 -p ./Downloadedsearch/下 JSONL--search-max默认 50REST API 服务pip install fastapi uvicorn后python run.py --serve --serve-port 8000POST /api/v1/download提交链接GET /api/v1/jobs/{job_id}查状态完成通知notifications配置 bark / telegram / webhook下载结束推送单个通道失败不阻塞主流程视频转写transcript.enabled: true需OPENAI_API_KEY.transcript.txt/.transcript.json仅对视频生效直播录制最小配置实验性功能webcast 接口未覆盖所有场景link: - https://live.douyin.com/123456789 live: max_duration_seconds: 3600 # 0 录到主播下播 idle_timeout_seconds: 30评论采集最小配置comments: enabled: true include_replies: false # true 会额外抓取每条评论的二级回复 max_comments: 500 # 0 为不限调优参数每个参数解决什么问题只改与你的症状相关的参数即可不需要背下整个配置文件。参数解决什么问题建议值database/database_path数据库记录 本地文件指纹双重去重兼作下载历史true/ 默认dy_downloader.dbincrease.postlike/mix/music 同理增量下载磁盘上已有的作品直接跳过只抓新内容truethread同时下载的并发数过高易被限流默认 5家用网络 58rate_limit每秒请求上限降低被限流概率2retry_times失败后指数退避重试1s、2s、5s3video_quality画质档位highest/original/lowest/ 1440p 至 360phighestoriginal会探测上传原片每条作品多一次探测请求超时 10sfilename_template自由拼装命名必须含{id}防覆盖{date}_{title}_{id}start_time/end_time只抓时间窗口内的作品格式YYYY-MM-DDdownload_pinned是否包含作者主页置顶作品默认falsebrowser_fallback.enabled/headless翻页受限时切浏览器继续抓可人工过验证true/falseprogress.quiet_logs进度阶段静默日志防止屏幕重绘抖动trueproxy直连受限时走代理空字符串表示不走代理命名模板可用变量{id}{title}{author}{author_id}{date}{year}{month}{day}{time}{timestamp}{type}{mode}。排错手册对照症状找动作按症状 → 可能原因 → 处理动作排查基本 30 秒能定位。症状可能原因处理动作批量抓取只有 20 条左右平台风控限制了 API 翻页确认browser_fallback.enabled: true且headless: false浏览器弹窗出现后人工完成验证别急着关掉大量报错提示登录态失效Cookie 过期重跑python -m tools.cookie_fetcher --config config.yml重新获取下载速度明显变慢并发过高触发限流或网络本身问题把thread降到 35必要时配置proxy某个想重下的作品被跳过数据库记录 本地文件双重去重生效删本地Downloaded/作者名/post/*_aweme_id/再执行sqlite3 dy_downloader.db DELETE FROM aweme WHERE aweme_id aweme_id;。只删库不会触发重下程序还会扫描本地文件名里的 aweme_id只删文件则会触发重下个别作品始终失败作品已删除或设为私密属内容侧问题任何工具都抓不到直播录制中途断了担心文件丢失录制中断无需处理下播、网络空闲或 CtrlC 时.tmp文件会自动提升为正式文件已录字节保留终端进度输出嘈杂重复progress.quiet_logs未开设为true调试时临时用-v或--show-warnings查看日志把批量抓取、去重、归档这些重复劳动交给程序之后五十条作品的全量入库通常十分钟级别完成同一主页再跑一次只补新作品——你省下的时间应该花在选素材和拆内容上而不是手动搬运。请合法合规地使用本工具尊重内容版权与平台规则仅将下载内容用于个人研究与数据管理。【免费下载链接】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),仅供参考