Back to skills
extension
Category: Data & AnalyticsNo API key required

salarymeow-downloader

跨平台社交媒体媒体下载工具(SalaryMeow Downloader)。基于 LightClaw 环境内本地 yt-dlp 引擎,配合 LightClaw 浏览器 cookies(sm-cookies.sh 导出)解决登录态反爬,下载抖音/TikTok/X/B站/快手的视频和音频。当用户想下载抖音视频、解析抖音链接、下载TikTok、下载B站视频、下载快手视频、下载Twitter视频、社交媒体视频下载、去水印下载、视频被反爬拦截需要登录时使用。触发词包括:下载抖音、抖音下载、去水印、TikTok download、B站下载、快手下载、视频下载、音频下载、save video、download video、salarymeow。

personAuthor: user_a94fcd12hubcommunity

SalaryMeow Downloader 🐱

跨平台社交媒体媒体下载工具。支持 抖音 / TikTok / X(Twitter) / B站 / 快手

v2.0 起改为本地 yt-dlp 引擎:不再依赖 fzpnowm.top 第三方 API,全部在 LightClaw 环境内直接下载。 登录态由 LightClaw 浏览器 cookies 提供(sm-cookies.sh 一键导出),解决 B站/YouTube 反爬拦截。

运行要求:GNU/Linux、yt-dlp、python3。安装后 chmod +x *.sh,cron 安装见下文。 ffmpeg 为可选依赖(非 H.264 源自动转码用),缺失时可用 setup-ffmpeg.sh 一键安装。

文件说明

| 文件 | 说明 | |------|------| | SKILL.md | LightClaw 技能元数据与使用文档(含 QQ/微信通道完整指南) | | sm-dl.sh | CLI 下载脚本(本地 yt-dlp 引擎,含 H.264 预检与转码) | | sm-cookies.sh | LightClaw 浏览器 cookies 定位/导出工具 | | sm-dl-async.sh | 异步下载包装器(防阻塞消息通道 + outbox 推送闭环) | | yt-dl-status.sh | 查询后台任务状态 / 待推送队列 | | cleanup.sh | 自动清理脚本(cron 定时任务,与推送 ack 绑定) | | setup-ffmpeg.sh | ffmpeg 安装引导(H.264 转码兜底依赖,可选) | | bin/ | ffmpeg 二进制落点(可选,放入后优先使用) |

H.264 编码策略

视频下载统一输出 H.264(AVC)编码

  1. 下载前检测编码,优先选原生 H.264 视频流直接下载;
  2. 源无 H.264(HEVC/AV1/VP9)时自动用 ffmpeg 转码为 H.264;
  3. ffmpeg 缺失则拒绝下载并明确提示(退出码 3);
  4. ffmpeg 探测顺序:SMDL_FFMPEG → 包内 bin/ffmpeg → 系统 ffmpegsetup-ffmpeg.sh 引导安装;
  5. mp3 音频不受 H.264 限制。

快速使用

# 预览(仅元数据)
sm-dl https://www.bilibili.com/video/BVxxxx/

# 下载视频(默认最高画质)
sm-dl https://www.bilibili.com/video/BVxxxx/ -d

# 下载 MP3 音频
sm-dl https://www.youtube.com/watch?v=xxxx -d -f mp3

# 指定画质
sm-dl https://v.douyin.com/xxxxxx/ -d -q 1080p

配置登录态(关键,解决反爬)

# 一键导出 LightClaw 浏览器 cookies(输出 ~/.lightclaw/cookies/lightclaw.txt,权限 600)
sm-cookies

# 查看探测结果
sm-cookies --list

# 只导出指定站点
sm-cookies --domains bilibili.com,douyin.com

导出后 sm-dl.sh 自动使用。重新登录站点后重跑 sm-cookies 即轮换;删除文件即撤销。 安全:cookies 只在本机使用,严禁外发。

异步下载(QQ/微信通道用)

# 异步提交任务,立即返回,后台执行;完成后写 outbox 待推送队列
sm-dl-async qq USER_ID "https://www.bilibili.com/video/BVxxxx/" -d -q 1080p

# 查询所有任务状态(含进程活性看门狗)
yt-dl-status

# 查看待推送队列(Agent 消费后调用 file_preview 推送)
yt-dl-status --outbox

特性:setsid 脱离进程组、动态超时、指数退避重试(3 次,2s→4s)、同链接去重、每用户/全局并发上限、产物按任务目录隔离。

选项

| 参数 | 说明 | 默认值 | |------|------|--------| | -d, --download | 下载媒体 | 否(仅预览) | | -q, --quality | 画质:720p / 1080p / HD | 最高可用 | | -f, --format | 格式:video / mp3 | video | | -o, --output | 输出目录 | 当前目录 | | -v, --verbose | 显示详细调试信息 | 否 |

环境变量

| 变量 | 说明 | 默认值 | |------|------|--------| | SMDL_COOKIES | cookies 文件路径 | ~/.lightclaw/cookies/lightclaw.txt | | SMDL_YTDLP | yt-dlp 命令路径 | yt-dlp | | SMDL_FFMPEG | ffmpeg 命令/路径 | 包内 bin/ffmpeg → 系统 ffmpeg → 自动安装 | | SMDL_NO_AUTO_FFMPEG | 非空则禁用 ffmpeg 自动安装 | 空 | | SMDL_TIMEOUT | 异步任务总超时(秒) | 600 | | SMDL_MAX_PER_USER | 每用户同时在途任务数 | 2 | | SMDL_MAX_GLOBAL | 全局同时在途任务数 | 6 | | SMDL_MEDIA_TTL_MIN | 已推送文件保留分钟数 | 60 | | SMDL_NO_COLOR | 关闭 ANSI 颜色 | 非 TTY 自动关闭 |

安装清理 cron

chmod +x *.sh
crontab -e
# 0 * * * * /path/to/salarymeow-downloader/cleanup.sh >> ~/.lightclaw/logs/cleanup.log 2>&1

支持平台与限制

| 平台 | 链接格式 | 状态 | |------|---------|------| | B站 | bilibili.com / b23.tv | ✅ 稳定(cookies 解锁高清) | | YouTube | youtube.com / youtu.be | ✅ 稳定 | | 抖音 | douyin.com / v.douyin.com | ⚠️ 尽力(基本必须 cookies) | | 快手 | kuaishou.com | ⚠️ 尽力 | | X / Twitter | twitter.com / x.com / t.co | ⚠️ 受限(需登录态) |