配好 6 个键,把抖音创作者主页的全部作品批量下载到本地
2026/9/20 10:42:08 网站建设 项目流程

配好 6 个键,把抖音创作者主页的全部作品批量下载到本地

【免费下载链接】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

本文以开源项目 douyin-downloader 为例,给出抖音主页备份(抖音批量下载)的实操教程:把创作者主页链接写进配置文件,工具会逐条拉取该主页的作品,并把视频、封面、背景音乐和元数据保存到本地。全流程只需要动 6 个键。

复制这份配置,把抖音创作者的全部作品存到本地

下面直接给出最终配置与启动命令,环境要求 Python 3.8+,先克隆仓库并装依赖:

git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader cd douyin-downloader pip install -r requirements.txt

再把仓库里的config.example.yml复制成config.yml,改下面几处键。配置相当于一张工单,工具只会照着工单执行:

link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx # 创作者主页 path: ./Downloaded/ # 保存目录 mode: [post] # 拉取作品页 number: post: 2 # 0 = 全部,首次先试 2

剩下两个键:thread: 5是并发数,database: true开启 SQLite 去重。保存后用一行命令启动:

python run.py -c config.yml

启动后每个作品占一条进度条,最后汇总完成数量。不想碰命令行的话,项目还带一个桌面版(Beta):粘贴抖音链接即可发起下载。

link、mode、number 这些键怎么填

本节解释这 6 个键为什么这么配。

link是批量下载的入口,填入https://www.douyin.com/user/...格式的主页链接后,工具会逐页翻完该主页的作品列表。mode: [post]表示拉取「作品」页签;想连创作者点赞过、合集或原声音乐一起拉,可再补likemixmusic,各模式的策略实现位于 core/user_modes/。

number.post是拉取上限:0代表全部,非零代表只取最新 N 条。我首次先填了 2,确认路径和命名符合预期后再改成 0,这是最稳的顺序。默认不含置顶作品,需要的话把download_pinned改为true

path决定文件落盘位置,中途不要挪动,否则去重记录会失效。跑完后目录树长这样:

Downloaded/ └── AuthorName/ └── post/ └── 2024-02-07_Title_aweme_id/ ├── xxx.mp4 ├── xxx_cover.jpg └── xxx_data.json

打开cover: truemusic: true会一并保存封面图与背景音乐,再打开json: true就多留一份元数据。

另要注意:作品列表接口近期可能触发风控,项目默认开启browser_fallback兜底,会弹出浏览器窗口协助翻页,不要过早关闭。

Cookie 自动获取怎么做,免手填字段

本节解决「登录态从哪来」的问题。抖音的部分接口要求登录身份,登录态由 Cookie 携带,项目自带获取工具 tools/cookie_fetcher.py:

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

它会弹出浏览器窗口,扫码登录后回到终端按回车,msToken 等字段自动写回配置文件。执行前先pip install playwright并安装 Chromium 内核。全程几分钟,之后随时重跑该命令即可刷新。

打开 increase 和 database,重跑只补新作品

本节解决「重跑白烧流量」的问题。

database: true让每个作品完成后写入一条 SQLite 下载记录,重跑时记录与本地已有文件双重比对,两者都命中才跳过。记录默认存在dy_downloader.db,由 storage/database.py 维护。

increase.post: true表示只补新作品:本地主文件已存在就跳过;删掉某作品的本地文件,下次会重新拉取。两者配合,跑十遍也不会重复下载旧作品。只想重拉某个时段,可用start_timeend_time圈定时间窗。

用 crontab 挂到每天凌晨自动跑,新作品自己到 💡

本节给无人值守方案。Linux 上执行crontab -e追加一行:0 4 * * * cd /path/to/douyin-downloader && python run.py -c config.yml。配合increase.post: true,创作者白天新发的作品会在凌晨自动补进本地。触发器像闹钟,到点只补缺的部分。

桌面版的任务中心里,每批任务的成功/失败数量一目了然,失败项可直接重试:

4 种常见症状与对应解法

遇到失败时先按症状定位,多数落在以下四类:

  • 症状:大批作品失败,提示需要登录。原因:Cookie 过期。解法:重跑python -m tools.cookie_fetcher --config config.yml,不要手改字段。
  • 症状:只拉到二十来条,远少于实际数量。原因:API 分页触发风控。解法:保持browser_fallback.enabled: trueheadless: false,在弹出的浏览器里手动完成校验后继续任务。
  • 症状:重跑把已下载的内容又下一遍。原因database没开,或保存路径中途改过。解法:保持database: truepath定好后不再挪动。
  • 症状:中途提示磁盘空间不足。原因:全量拉取且音乐、封面、元数据全开,体积成倍增长。解法:用start_time/end_time收窄时间窗,或调小number.post

请仅把该工具用于个人学习、研究与备份,尊重内容创作者权益。现在就能做的下一步:把number.post改成 2,跑一次python run.py -c config.yml,确认Downloaded/里的产物符合预期。

【免费下载链接】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),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询