
三步把抖音链接变成整洁作品库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是一个去水印、支持视频/图文/合集/音乐/直播多种格式的抖音批量下载工具它把复制链接—解析—下载—重命名—归档的整套手工流程压缩成一条命令。本文用真实步骤带你从零跑通再讲清批量、增量、去重等进阶配置最后帮你避开新手最常见的几个坑。从一个熬夜整理素材的场景说起做内容运营的小林每天雷打不动的任务是盯 20 个对标账号。他以前的流程是这样的打开作者主页 → 逐条复制链接 → 找解析站去水印 → 下载 → 手动改文件名 → 拖进对应文件夹。一条视频平均要花 2 分钟20 条就是一个多小时而且其中大部分时间耗在毫无技术含量的重复动作上手一抖还可能漏下载或重复下载。后来他把作者主页链接交给 douyin-downloader几分钟后收获的是下面这样的目录作者名一层、作品类型一层、每个作品一个带日期_标题_ID的独立文件夹视频、封面、音乐、元数据各归其位。真正省时间的不是能下载而是下载完不用管——解析、去水印、选最高画质、命名、归档全在一条命令里完成。先搞清楚它到底能搬什么用一句话概括这个工具像一位不知疲倦的搬运工把你指定的抖音内容按规则搬回本地。它支持的内容类型如下链接类型示例写法说明单条视频douyin.com/video/{id}自动无水印、按码率选最高画质图文douyin.com/note/{id}图片原图保存合集douyin.com/collection/{mix_id}整个合集一次拉完音乐douyin.com/music/{music_id}优先原声文件作者主页douyin.com/user/{sec_uid}支持 post / like / mix / music 四种模式直播live.douyin.com/{room_id}录制 FLV/HLS下播保留已录数据除了搬内容它还内置了防翻车机制失败自动重试指数退避、SQLite 数据库去重、下载完整性校验Content-Length 比对不完整的文件自动清理重下、翻页受限时用浏览器兜底。这些能力意味着它可以长期稳定地跑批量任务而不是一次性的小脚本。从零跑通第一条下载第一步安装依赖克隆仓库后安装 Python 依赖Python 3.8 即可git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt第二步生成配置文件并获取 Cookiecp config.example.yml config.yml python -m tools.cookie_fetcher --config config.yml执行第二条命令后浏览器会打开抖音登录页登录成功后回到终端按 Enter程序会把 Cookie 自动写进配置文件。这一步是为了让 API 请求通过登录校验是下载能正常进行的前提。第三步写最小配置并运行把config.yml改成这样含义在注释里link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx # 目标作者主页 path: ./Downloaded/ mode: - post # 只下载作者发布的作品 number: post: 20 # 最近 20 条写 0 表示全部然后运行python run.py -c config.yml命令行会展示任务配置、实时进度条和最终统计下载完成后路径和数量一目了然到这里你的第一条链接变作品库流水线已经跑通了。这些配置参数改对了才省心最小配置能跑但要跑得稳、找得快下面几个参数值得花两分钟理解配置项作用推荐值thread并发下载数5~8太高易触发风控retry_times失败重试次数3proxyHTTP/HTTPS 代理需要时填http://127.0.0.1:7890database开启 SQLite 去重与历史记录truefolderstyle每个作品一个独立子目录truefilename_template文件名模板至少含{id}防止重名覆盖author_dir作者目录命名重度用户建议nickname_uid唯一又直观命名模板支持{date} {title} {author} {id} {type}等变量默认的{date}_{title}_{id}对绝大多数人够用——日期用的是作品发布时间而非下载时间归档后按时间排序非常自然。进阶玩法把下载变成自动化的日常任务一次拉完作者的四种内容想把作者主页的作品、喜欢、合集、音乐全收下把 mode 配成四个即可跨模式会自动去重同一个作品不会重复下载mode: - post - like - mix - music批量下载时每个任务都有独立的进度条完成状态一目了然增量更新只下新增作品对长期关注的账号开启增量模式后每次运行只下载上次之后的新作品配合数据库去重重复扫描的成本几乎为零increase: post: true database: true直播录制与内容挖掘看到想留档的直播间把链接丢进去就能录link: - https://live.douyin.com/123456789 live: max_duration_seconds: 3600 # 0 表示录到主播下播此外还有两个很适合做选题的工具python run.py --hot-board 30拉取热搜榜导出 JSONLpython run.py --search 猫咪按关键词搜索作品。下载完成后还可以通过 Bark / Telegram / Webhook 推送通知任务结束手机立刻知道。不想敲命令试试桌面版项目还提供了一款基于同一套后端的桌面客户端内测中粘贴链接即可开始下载支持关注列表同步和任务中心管理对不习惯命令行的运营同学来说这个图形界面把门槛降到了粘贴—点击。新手最容易踩的四个坑Q1Cookie 失效下载报错怎么办重新执行python -m tools.cookie_fetcher --config config.yml重新登录一次即可这是最常规的修复方式。Q2为什么只能抓到 20 条作品这是翻页风控的典型表现。确认browser_fallback.enabled: true、headless: false浏览器弹出后手动完成验证码不要急着关窗口程序会继续往下翻。Q3我想重新下载某个作品为什么一直跳过程序靠数据库记录 本地文件双重检查判断是否已下载两条线索都在才会跳过。想重下需同时删本地文件和数据库记录DELETE FROM aweme WHERE aweme_id xxx;Q4进度条刷屏看得头晕保持progress.quiet_logs: true调试时才临时加-v看详细日志。怎么确认下载真的成功了跑完任务别急着关终端用三招验证看目录Downloaded/{作者名}/post/下每个作品一个文件夹视频、封面、音乐、JSON 元数据齐全。查清单根目录的download_manifest.jsonl记录了每次下载的日期、标题、标签、文件路径可作为内容台账。查历史开启database后可以用一行 SQL 查看完整下载历史sqlite3 dy_downloader.db SELECT aweme_id, title, author_name FROM aweme ORDER BY download_time DESC LIMIT 20;另外项目自带的完整性校验会在下载后比对文件大小异常文件自动清理重下你可以放心把批量交给它。现在就动手试一次从一条视频链接开始到整个作者主页的自动归档整个过程不超过十分钟。项目文档仓库内的README.zh-CN.md和config.example.yml覆盖了全部参数说明遇到 bug 或想提新功能欢迎到仓库提交 issue 或 PR分享你调好的配置模板同样是对社区有价值的贡献。请记住这个工具只用于学习交流与个人数据管理务必在合法合规的前提下使用。现在复制你的第一条链接跑起来让下载这件事从每天 1 小时变成一条命令。【免费下载链接】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),仅供参考