skills/douyin-batch-download/SKILL.md
抖音视频批量下载工具 - 基于 F2 框架实现高效、增量的视频下载功能。支持单个/批量博主下载,自动 Cookie 管理,差量更新机制。本技能应在用户需要批量下载特定博主视频、服务器部署自动化下载、或定期更新视频库时使用。
npx skillsauth add cat-xierluo/legal-skills douyin-batch-downloadInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
本技能基于 F2 框架实现抖音视频批量下载,提供高效、稳定的批量下载能力。
在 config/config.yaml 中配置下载路径:
# 下载路径配置
# 留空则使用系统 Downloads 目录下的 "抖音视频下载" 子目录
# macOS: ~/Downloads/抖音视频下载
# Windows: C:\Users\<用户名>\Downloads\抖音视频下载
download_path: ""
# 自定义路径示例:
# download_path: "/Users/maoking/Movies/抖音"
# download_path: "D:\\Videos\\抖音"
视频文件按博主昵称分类存储,例如:
~/Downloads/抖音视频下载/
├── 博主A/
│ ├── 2024-01-01_视频标题_xxx.mp4
│ └── ...
├── 博主B/
│ └── ...
└── data.js # Web 界面数据
下载视频时,系统会自动提取并保存以下数据:
| 字段 | 说明 |
|------|------|
| aweme_id | 视频唯一 ID |
| uid | 作者 UID |
| nickname | 博主昵称 |
| desc | 视频描述/文案 |
| create_time | 发布时间 |
| duration | 视频时长 |
| digg_count | 点赞数 |
| comment_count | 评论数 |
| collect_count | 收藏数 |
| share_count | 分享数 |
数据存储在 douyin_users.db 的 video_metadata 表中。
# 扫描本地视频并提取元数据(基本信息)
python scripts/extract-metadata.py
# 查看统计摘要
python scripts/extract-metadata.py --stats
⚠️ 注意:
--fetch选项已废弃。推荐使用download-v2.py重新下载视频,会自动保存统计数据。
# 创建配置
mkdir -p config
cp config/config.yaml.example config/config.yaml
# 编辑配置(填写 Cookie)
${EDITOR:-nano} config/config.yaml
# 单个下载(推荐)
python scripts/download-v2.py "https://www.douyin.com/user/MS4wLjABAAAA..."
# 批量下载
python scripts/batch-download.py --all
# 交互式选择博主下载
python scripts/batch-download.py
# 采样下载(每个博主1个视频,快速更新数据)
python scripts/batch-download.py --sample
# 生成 Web 界面数据
python scripts/generate-data.py
# 查看 Web 界面
open ~/Downloads/抖音视频下载/index.html
1. 添加博主 → python scripts/manage-following.py --batch
2. 批量下载 → python scripts/batch-download.py --all
3. 查看数据 → open ~/Downloads/抖音视频下载/index.html
下载时自动保存:
skills/douyin-batch-download/
├── SKILL.md # 本文件
├── references/
│ ├── INSTALLATION.md # 详细安装依赖说明
│ └── USAGE.md # 详细使用说明
├── scripts/
│ ├── utils/ # 工具模块
│ │ └── config.py # 统一配置加载
│ ├── download-v2.py # ✅ 推荐下载脚本(自动保存统计数据)
│ ├── batch-download.py # 批量下载入口
│ ├── download.py # ⚠️ 旧版下载脚本(已废弃)
│ ├── manage-following.py # 关注列表管理(添加/删除/搜索)
│ ├── sync-following.py # 从 F2 数据库同步 following.json
│ ├── compress.py # 视频压缩脚本
│ ├── extract-metadata.py # 视频元数据提取
│ ├── generate-data.py # 生成 Web 界面数据文件
│ ├── following.py # following.json 操作库
│ └── login.py # 扫码登录脚本
├── config/
│ ├── config.yaml.example # 配置模板
│ └── following.json # 关注列表(已下载的博主)
└── douyin_users.db # SQLite 数据库(用户信息 + 视频元数据)
| 依赖 | 安装方式 |
|:-----|:---------|
| Chrome/Chromium | 下载地址 |
| ffmpeg | macOS: brew install ffmpeg / Ubuntu: sudo apt install ffmpeg |
ffmpeg 用于视频压缩功能,如仅需下载功能可不安装。
| 包名 | 用途 |
|------|------|
| f2 | 抖音视频下载框架 |
| playwright | 浏览器自动化(扫码登录) |
| pyyaml | YAML 配置文件解析 |
| httpx | 异步 HTTP 客户端 |
| aiofiles | 异步文件操作 |
详细安装说明:见 references/INSTALLATION.md
详细使用说明:见 references/USAGE.md
下载的视频可以使用 funasr-transcribe 技能将视频转录为带时间戳的 Markdown 文件。
配合方式:先使用抖音下载技能获取视频,再使用 FunASR 技能进行转录。两个技能独立运行,可根据需要灵活组合使用。
data-ai
当用户要求你并行推进多个任务、一次性开多个 worker/agent 同时工作、用 tmux 启动多个独立 session、防止 PM 直接实现逃逸、或者你作为 PM 需要拆解并派发任务给多个独立 worker 时使用。触发词包括"并行推进""开多个""同时推进""派 worker""多 agent 并行""开 worker""tmux 启动""独立 session""防逃逸""分派任务""一起做"。不要用于单个短任务、跨平台任务状态管理、或 Git 分支/提交/PR/merge 安全规则。
content-media
本技能应在用户需要 OCR、扫描识别、图片文字识别、文档识别,或将 PDF、图片、Office 文档、URL 转换为 Markdown 时使用。检测到法律材料时可进行保守的法律术语与文书结构优化。不要用于法律事实判断、补写缺失内容、语义改写、印章深度识别或图表实体分析。
tools
将 monorepo 中的子目录通过 git subtree 推送到独立 GitHub 仓库。支持注册清单、变更自动检测、增量推送。本技能应在用户提交涉及已注册子项目的变更后,或手动请求推送到独立仓库时使用。不要用于初次创建 monorepo 或管理 git submodule。
documentation
--- name: contract-copilot version: 1.5.2 description: 合同起草与审查助手。基于分层分析与四步流程,输出可执行的风险清单、起草骨架、修改建议、推荐措辞和审查意见书,支持批注与修订两种文档处理方式。用户通过飞书或其他 IM 对话发送合同文件并要求审查或起草时,也应使用本 skill,并优先沿原会话回传修订版和审查报告。 license: CC BY-NC 4.0 homepage: https://github.com/cat-xierluo/legal-skills author: 杨卫薪律师(微信ywxlaw) # Contract Copilot(合同助手) ## 一、定位 调用时,先按本文件确定运行流程。 ### 1.1 强制文件交付规则 当用户提供或通过会话传入 DOCX 合同文件,并提出“审查、审核、修改、批注、修订、出审查意见、帮我看合同”等合同审查类请求时,默认必须走文件交付链路: 1. 先完成必要澄清与分层审查。 2. 将审查结论整理为 `review-plan.json`。 3. 运行 `scripts