FEATURED · 精选文章

douyin-downloader:从单条抓取到批量无水印下载的实战指南

发布时间 / 2026/9/15 12:10:16
来源 / 创域科博编辑部
栏目 / 资讯中心
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-downloaderdouyin-downloader 是一款面向实用场景的抖音无水印下载工具支持单条链接抓取与用户主页批量下载内置并发重试、SQLite 去重与浏览器兜底适合需要批量归档抖音内容的创作者、研究者与开发者。项目能力速览功能一句话说明典型场景单条内容下载视频/图文/合集/音乐短链自动解析保存单条无水印作品用户主页批量下载按post/like/mix/music模式采集备份创作者全部内容直播录制直播间链接直接录 FLV下播保留已录数据直播存档评论与搜索采集评论落 JSON热搜/关键词导出 JSONL数据采集分析去重与增量数据库记录 本地文件双重校验定时增量采集浏览器兜底翻页受限时拉起浏览器人工过验证风控场景架构上core/下的下载器工厂按 URL 类型分发到不同下载器API 请求失败时由浏览器兜底接管翻页storage/负责文件落盘与 SQLite 历史记录模块间通过config/的配置加载器串联。安装与首次运行环境要求 Python 3.8macOS / Linux / Windows 均可。① 克隆并安装依赖git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt如需浏览器兜底与自动抓 Cookie额外安装 Playwrightpip install playwright python -m playwright install chromium。② 复制配置并获取 Cookiecp config.example.yml config.yml python -m tools.cookie_fetcher --config config.yml浏览器中登录抖音后回到终端按 EnterCookie 自动写入config.yml。⚠️ Cookie 有时效出现登录态失效类报错时重新运行上述 cookie_fetcher 命令即可更新。③ 跑通第一条下载命令python run.py -c config.yml -u https://www.douyin.com/video/7604129988555574538 -p ./Downloaded成功后Downloaded/下出现按日期_标题_aweme_id命名的作品文件夹。核心用法单条链接下载命令链接写入配置link数组或用-u直接追加python run.py -c config.yml \ -u https://www.douyin.com/video/7604129988555574538 \ -t 8 -p ./Downloaded关键参数-u, --url— 追加下载链接可重复传入-c, --config— 指定配置文件默认config.yml-p, --path— 指定下载目录-t, --thread— 指定并发数--search KEYWORD— 按关键词搜索并导出 JSONL支持/video/、/note/图文、/collection/合集、/music/原声链接及v.douyin.com短链视频源默认自动选无水印地址。用户主页批量下载命令在配置中指定主页链接与模式number为每种模式的条数上限0表示全量python run.py -c config.ymllink: - https://www.douyin.com/user/MS4wLjABAAAAxxxx mode: - post number: post: 0多模式可同时开启post/like/mix/music跨模式按 aweme_id 去重。输出目录结构Downloaded/ ├── download_manifest.jsonl └── 作者名/ └── post/ └── 2024-02-07_标题_aweme_id/ ├── 视频.mp4 ├── 视频_cover.jpg ├── 视频_music.mp3 └── 视频_data.json封面、音乐、头像、JSON 由cover/music/avatar/json开关控制默认仅保存视频本体。直播录制配置link指向直播间时进入录制模式FLV 存于Downloaded/{作者}/live/附*_room.json元数据快照主播下播、网络空闲或 CtrlC 时已录数据保留link: - https://live.douyin.com/123456789 live: max_duration_seconds: 3600 # 0 录到主播下播 idle_timeout_seconds: 30清晰度按流列表自动挑选最高可用档ORIGIN 原画最高优先级FULL_HD1 / FULL_HD 超清HD1 / HD 高清SD1 / SD2 / SD 标清LD 流畅HLS 源仅保存 playlist需 ffmpeg 后处理为可播放文件。Douzy GUI 客户端Douzy 是基于同一套后端的桌面客户端内测中安装文件见仓库 Releases 页面为抖音、TikTok、YouTube 提供独立工作台粘贴链接即可开始下载无需记忆命令。多链接队列一键启动单条/主页/合集下载同步关注、收藏夹、收藏合集与喜欢列表任务中心查看任务状态、重试失败项、打开输出目录本地作品档案支持筛选与快速重新下载配置体系仓库内实际模板及配置相关源码文件适用场景与基础模板的关键差异config.example.yml唯一完整模板复制到config.yml使用覆盖全部选项画质、浏览器兜底、评论、直播、通知config/default_config.py新配置的代码级默认值字段缺失时自动补齐含increase/author_dir等config/config_loader.py加载与合并逻辑默认值与用户配置合并支持 CLI 参数覆盖最小可用配置注释为关键字段说明link: - https://www.douyin.com/video/7604129988555574538 path: ./Downloaded/ mode: - post thread: 5 # 并发数 retry_times: 3 # 失败重试次数 database: true # SQLite 去重与历史并发与限速控制下载吞吐thread: 8 rate_limit: 2 # 默认 2 请求/秒重试策略失败按指数退避1s、2s、5s重试retry_times: 3 proxy: # 可选 HTTP/HTTPS 代理时间过滤仅采集区间内发布的作品格式YYYY-MM-DDstart_time: 2024-01-01 end_time: 2024-12-31其他常用字段video_qualityoriginal/highest/lowest或指定1440p等分辨率、increase.*增量下载开关、comments.*评论采集、notifications.*Bark/Telegram/Webhook 推送、transcript.*OpenAI 转写。实战工作流备份自己账号的全部作品目的创作者定期备份自己的发布内容。将link指向自己的主页配置mode: [post]、number.post: 0、increase.post: true运行python run.py -c config.yml。已下载作品按磁盘主文件跳过新作品自动增量补齐。按时间范围采集指定账号内容目的研究者只关注某时间窗内的发布。在配置中同时设置start_time/end_time与目标主页链接并配number.post限制条数。采集结束后download_manifest.jsonl与*_data.json可直接作为分析数据源。定时自动化采集Linux / macOS 用 crontab 每天凌晨执行增量任务0 2 * * * cd /path/to/douyin-downloader python run.py -c config.yml download.log 21Windows 用任务计划程序① 新建daily_download.bat内容为cd /d C:\path\to\douyin-downloader python run.py -c config.yml② 在任务计划程序中创建每日触发任务指向该 bat 文件。注意 Cookie 会过期定时任务失败时先更新 Cookie。元数据与二次利用每个作品的元数据文件启用json: true后每个作品目录内生成*_data.json原始 API 响应摘录关键字段如下下载根目录另有download_manifest.jsonl逐条记录{ aweme_id: 7604129988555574538, desc: 视频标题/描述, create_time: 1704067200, author: { nickname: 创作者名称 }, statistics: { digg_count: 12345, comment_count: 678 }, video: { duration: 60 } }常见二次利用方式批量转写开启transcript.enabled: true视频下载后自动生成*.transcript.txt/json用于听力材料或内容检索入库做趋势分析dy_downloader.db的aweme表记录下载历史配合*_data.json的互动字段可统计发布频率、热度分布按互动数据筛选解析 JSON 中的statistics按点赞/评论量阈值筛出优质样本故障排查症状报错登录态失效需要重新登录或批量请求 401/403。解决重新运行python -m tools.cookie_fetcher --config config.yml登录后按 Enter 更新 Cookie。症状每个用户只拿到约 20 条作品。解决这是翻页风控限制确认browser_fallback.enabled: true且headless: false在弹出的浏览器窗口手动完成验证后再继续。症状下载速度慢或频繁超时。解决调整thread默认 5与rate_limit网络不稳时在配置中设置proxy调试期可用-v查看完整日志。症状希望强制重下某条已下载作品。解决跳过判定是数据库记录 本地文件双重校验需同时删除本地目录与数据库记录rm -rf Downloaded/作者名/post/*_aweme_id/ sqlite3 dy_downloader.db DELETE FROM aweme WHERE aweme_id aweme_id;工具只处理当前 Cookie 可见的公开内容不会突破平台权限获取私密或他人账号数据平台接口变更导致功能失效属于正常技术风险。项目结构与使用边界核心目录职责run.py cli/ — 命令行入口、参数解析与主流程core/ — API 客户端、下载器工厂及视频/主页/直播/音乐下载器auth/ tools/cookie_fetcher.py — Cookie 管理与自动抓取config/ storage/ — 配置加载合并、文件落盘与 SQLite 历史桌面端 Douzy 已覆盖 TikTok 与 YouTube 工作台后续方向以多平台支持与转写等智能处理能力扩展为主。使用边界本项目仅用于技术研究、学习与个人数据管理不用于侵犯他人隐私或版权不用于商业用途遵守抖音平台使用条款用户对使用行为自行承担法律责任。遇到 bug 或接口失效直接向仓库提 Issue有意改进的可提交 PR 参与 tests/ 覆盖下的开发。【免费下载链接】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),仅供参考
RELATED — 相关阅读

相关资讯

LATEST — 最新资讯

最新发布

TODAY — 本日精选

新闻

WEEKLY — 本周精选

新闻

MONTHLY — 本月精选

新闻