video-download by csfuwwc/md-skills
npx skills add https://github.com/csfuwwc/md-skills --skill video-download从分享链接下载视频到本地。抖音/小红书/B站使用 Playwright 无头浏览器,其他站点使用 yt-dlp。
推荐:自动安装脚本(已优化国内网络)
bash ~/.cursor/skills/video-download/scripts/install_deps.sh
此脚本会自动:
或手动安装 (参考本文档末尾的"依赖安装"部分)
重要:下载 B站视频前,必须先检查登录状态(未登录只能获取 480p)。
python3 ~/.cursor/skills/video-download/scripts/download.py check-login bilibili
0(输出 LOGIN_OK)→ 直接跳到步骤 3 下载2(输出 )→ 需要执行步骤 2 登录广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
LOGIN_REQUIRED当 check-login 返回退出码 2 时,按以下流程操作:
python3 ~/.cursor/skills/video-download/scripts/download.py login bilibili --signal-file /tmp/video_dl_login_done
立即向用户展示确认按钮 ,使用 AskQuestion 工具:
用户点击确认后 :
touch /tmp/video_dl_login_done,等待登录脚本退出,然后继续下载兜底 :如果用户直接关闭了浏览器窗口,登录脚本会自动检测到并保存 cookie,无需信号文件。
python3 ~/.cursor/skills/video-download/scripts/download.py "<分享文本或链接>" [输出文件名.mp4]
脚本自动识别平台,优先使用 Playwright,其余 fallback 到 yt-dlp:
| 平台 | 支持的链接格式 | 引擎 | 需要登录 | 备注 |
|---|---|---|---|---|
| 抖音 | v.douyin.com/xxx 短链、www.douyin.com/video/xxx、modal_id=xxx | Playwright | 否 | 抓网络请求 |
| 小红书 | xiaohongshu.com/discovery/item/xxx、explore/xxx、xhslink.com/xxx | Playwright | 否 | 抓网络请求 |
| B站 | bilibili.com/video/BVxxx、b23.tv/xxx 短链 | Playwright | 推荐 | 解析 __playinfo__,需要 ffmpeg |
| YouTube | youtube.com/watch?v=xxx、youtu.be/xxx | yt-dlp | 否 | |
| Twitter/X | x.com/xxx/status/xxx、twitter.com/... | yt-dlp | 否 | |
instagram.com/reel/xxx、instagram.com/p/xxx | yt-dlp | 否 | 私密内容需登录 | |
| 其他 | 任意视频链接 | yt-dlp | 视站点 | 支持 1700+ 站点 |
~/Downloads/playwright(抖音/小红书/B站)、yt-dlp(其他站点)、ffmpeg# 登录(打开可见浏览器)
python3 ~/.cursor/skills/video-download/scripts/download.py login bilibili
# 带信号文件的登录(Agent 交互模式用)
python3 ~/.cursor/skills/video-download/scripts/download.py login bilibili --signal-file /tmp/video_dl_login_done
# 检查登录状态
python3 ~/.cursor/skills/video-download/scripts/download.py check-login bilibili
Cookie 保存在 ~/.config/video-download/<平台>_cookies.json,自动检测过期。
支持的平台: bilibili / douyin / xiaohongshu
bash ~/.cursor/skills/video-download/scripts/install_deps.sh
国内用户推荐配置(避免卡住):
# 1. 配置 pip 国内镜像源(永久生效)
pip3 config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
# 2. 安装 Python 包
pip3 install playwright
# 3. 使用国内镜像下载浏览器
export PLAYWRIGHT_DOWNLOAD_HOST=https://npmmirror.com/mirrors/playwright/
python3 -m playwright install chromium
# 4. 安装 ffmpeg(B站视频合并需要)
brew install ffmpeg
# 5. 安装 yt-dlp(YouTube/Twitter 等站点需要)
brew install yt-dlp
临时使用镜像(不改配置):
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple playwright
export PLAYWRIGHT_DOWNLOAD_HOST=https://npmmirror.com/mirrors/playwright/
python3 -m playwright install chromium
| 问题 | 解决方案 |
|---|---|
| SSL 证书错误 | 脚本已内置 ssl._create_unverified_context |
| 未捕获到视频地址 | 增加等待时间,或内容需要登录/是图文非视频 |
| curl/下载 403 | 检查 Referer 头是否匹配平台域名 |
| B站 ffmpeg 不存在 | brew install ffmpeg |
| B站画质低 | 执行 login bilibili 登录后重新下载 |
| CDN 地址过期 | 重新运行,URL 有几小时时效 |
| cookie 过期 | 重新执行 login 命令 |
| yt-dlp 未安装 | brew install yt-dlp 或 pip3 install yt-dlp |
| yt-dlp 下载失败 | 先 yt-dlp -U 更新到最新版,站点可能更新了反爬 |
| YouTube 地区限制 | 使用代理:yt-dlp --proxy socks5://127.0.0.1:1080 URL |
Weekly Installs
49
Repository
GitHub Stars
2
First Seen
Feb 10, 2026
Security Audits
Installed on
opencode45
cursor43
codex42
gemini-cli41
github-copilot39
openclaw39
通过 LiteLLM 代理让 Claude Code 对接 GitHub Copilot 运行 | 高级变通方案指南
40,000 周安装