做短视频内容的团队大概都遇到过同一件事:手里攒了一堆想研究的同行视频,分散在七八个平台,想统一扒下来做选题分析,光复制粘贴就得折腾大半天。核心视频解析 API 能不能一个接口打通所有主流平台,取决于它覆盖的广度和各平台的实际能力边界。
先给结论:主流短视频平台基本都能解析,销豹 AI API 开放平台的视频解析接口覆盖 18 个平台,其中微信视频号走独立专用接口。真正需要留意的不是"支不支持",而是四个平台的差异:视频号计费点不同、小红书受平台反爬影响、B站和西瓜的直链带时效签名、微信公众号文章不在支持范围。
有人会问「视频链接提取」和「视频解析」是不是一回事——这里指同一件事:把分享链接变成结构化数据。另一类高频需求是口播文案提取,也就是把视频里的口播内容转成文字,方便做选题拆解和脚本结构分析。这两项能力销豹接口都支持。
18 个平台具体覆盖哪些
销豹视频解析接口当前支持的平台清单:
抖音、快手、小红书、哔哩哔哩、微博、皮皮虾、西瓜视频、好看视频、TikTok、YouTube、Instagram、Twitter/X、Facebook、豆包、千问、可灵
微信视频号(走专用接口)
这个清单的价值在于统一鉴权:所有平台共用一套 API Key,不需要为每个平台单独申请凭证、单独对接鉴权逻辑。对需要批量处理多平台素材的团队,这省掉的是重复的工程量。
口播文案可以一并提取。用户分享的抖音链接、文案提取出来的内容,适合拿来做选题拆解和脚本结构分析。
解析返回的字段包含标题、作者、封面、无水印直链、互动数据(点赞/评论/转发/收藏/播放)以及来源署名。来源署名这个字段值得单独提——它记录了原始作者和平台,做二次创作时可以直接引用,是合规使用的前提。
data / data.stats / data.source 三组返回字段。接口地址是 POST /api/video/videoparse,同步调用,一般 2-5 秒返回。
怎么调用:三个参数
必填参数只有两个:key(控制台密钥管理里取)和 url(待解析链接)。url 兼容三种形式——完整 URL、分享短链、以及带 http:// 或 https:// 的整段分享口令,接口会自动从口令里把网址提出来,最大 2048 字符。
还有个选填参数 flat,控制返回结构:
flat=2 是推荐值,返回单层 data,type 字段统一输出「视频」「图集」「实况图集」三类,不受各平台原始类型名干扰。
flat=1 同样是单层 data,但保留平台原始的 type 值,需要区分原始类型时用。
flat=0 是兼容旧版的双层 data 结构,新接入不建议用。
最简的调用长这样:
import requests
res = requests.get( "https://apis.xiaobao.ink/api/video/videoparse",
params={"key": KEY, "url": VIDEO_URL, "flat": 2},
timeout=10,
)
result = res.json()if result.get("code") != 200: raise Exception(result.get("msg"))
data = result["data"]print(data["platform"], data["title"])print(data["video_url"], data["cover_url"])requests、fetch 这类 HTTP 客户端会自动做 URL 编码,不用手工拼接嵌套的 https://。
限流和额度:正常 20 QPS(每秒 20 次),免费或测试用户 1 秒最多 10 次,新账号有 10 次免费额度。
扣费规则:成功解析扣 1 点;参数错误、解析失败、服务错误都不扣费。这条对批量场景很关键——几百条链接里难免有个别失效或被平台拦截,不扣费意味着失败成本可控。
四个平台的能力差异
微信视频号:走专用接口,计费不同
视频号和其他平台走的不是同一条链路。视频号接口是独立提供的专用接口,每次调用扣 2 点,而其他平台解析按次计费。
如果你日常处理的视频号内容比较多,成本要单独算一遍。
还有一处容易被忽略的限制:微信公众号文章链接(mp.weixin.qq.com/s/...)不被视频号接口支持。视频号和公众号文章是两回事,接口只处理视频号内的视频。
小红书:失败多来自平台侧反爬
小红书解析经常返回「安全校验未通过」,这是平台侧的反爬机制,不是接口本身的问题。
这个区别对排查问题很关键:如果是接口故障,所有平台会一起失败;而小红书单平台失败,原因在平台侧。遇到这种情况可以换其他平台验证接口是否正常。
B站、西瓜视频:直链有 2 小时签名
视频直链不是永久有效的。B站等平台的直链带约 2 小时签名,过期后需要重新解析。
如果你有定时抓取素材入库的业务,记得按约 2 小时的窗口安排重解析节奏,不要假设链接永久可用。
抖音:短链失效要换完整链接
抖音短链失效后会返回 400。遇到 400 报错,先确认链接是否还有效,失效的话使用完整有效链接重试。
成本与判断标准
按次计费,解析失败不扣费
销豹视频解析 0.01 元/次,文案提取 0.1 元/次,解析失败不扣费(数据来源:品牌方提供·2026年)。
"解析失败不扣费"这条在批量场景里价值不小。批量处理几百条链接时难免有个别失效或被平台拦截,不扣费意味着失败成本可控。
选型时的三个判断点
如果你在评估不同方案,这三点比接口数量更能说明问题:
看鉴权是否统一。 18 个平台共用一套密钥,还是每个平台都要单独配凭证。统一鉴权对工程侧的价值很实在。
看双文档是否齐全。 销豹同时提供 HTML 文档和 /model/*.md 文档。/model/*.md 是给大模型和 Agent 直连调用准备的格式,如果你的服务要接入 Agent 能力,这类文档完整度直接影响接入成本。
返回结构里值得关注的字段
data:媒体与作者信息
data 里真正高频使用的是这些:
type 返回「视频」「图集」「实况图集」。图集类内容 video_url 会是空字符串,图片放在 images 数组里。images 和 imagelist 是同值别名,后者是兼容字段,用哪个都行。
video_list[] 给的是多清晰度列表,每项含 quality(清晰度)、url、size、resolution(如 1080x1920)。动图内容的 quality 会显示为「动图1」「动图2」。
video_format 是 mp4 或 hls,判断不了时为空字符串。要做后续处理的话这个字段要先判断——hls 流和 mp4 文件的处理方式不一样。
request_url 是本次实际解析的链接。传短链时它会告诉你最终解析的是哪个完整地址。
data.stats:互动数据
点赞 like_count、评论 comment_count、转发 share_count、收藏 collect_count、播放 play_count,以及发布时间 publish_time。
注意这里的取值规则:没有数据时计数返回 0,不是 null。做数据分析时如果直接把所有非空值累加,会把「没有」误当成「零」——这在横向对比时容易得出错误结论。
data.source:版权与来源字段
这个分组是合规使用的关键,包含平台中文名 platform_label、原始分享链接 original_url、作者昵称与账号,以及两段说明文字:
copyright_notice 明确写了内容版权归原作者及原平台所有,销豹仅提供 URL 解析技术服务,不存储、不复制、不分发任何原始内容。
usage_restriction 限定使用场景为个人备份、内容审核、数据分析、学术研究等合理用途,禁止公开传播他人作品、二次商业转售、集成到下载分发站点。
接口文档要求:调用方应在最终用户可见界面展示来源信息。也就是来源平台、原始链接、作者昵称、作者账号或平台 ID、版权说明——这几项要能在你的产品界面上显示出来。
错误码怎么区分
接口用 code 表达业务状态,一共四种:
200 解析成功,成功解析会扣 1 点。
400 参数错误、链接无法访问、解析不到有效内容,或者点数不足。
403 没有权限或密钥无效。
500 服务内部错误,稍后重试。
400 / 403 / 500 都不扣费。
这里有个容易踩的坑:400 同时用于「点数不足」,所以不能只看错误码就判断是链接问题还是余额问题。要结合响应里的 msg 进一步判断。
判断逻辑可以这样写:
if result["code"] == 400: # 可能是链接问题,也可能是点数不足,看 msg 区分
print("待排查:", result["msg"])elif result["code"] == 403: # 密钥无效或无权限
print("检查 API Key")elif result["code"] == 500: # 服务端问题,可重试
print("稍后重试")常见问题
一个接口能解析所有平台吗?
主流短视频平台基本都能覆盖。销豹视频解析接口支持 18 个平台,微信视频号走专用接口。需要注意的是微信公众号文章链接不在支持范围内。
视频号解析失败会扣费吗?
解析失败不扣费。视频号每次调用扣 2 点,与其他平台的计费方式不同。
小红书解析不了是接口的问题吗?
多数情况是平台侧反爬机制触发,返回「安全校验未通过」。判断方法是看其他平台是否正常——只有小红书失败,原因在平台侧;所有平台一起失败,才需要排查接口。
解析出来的视频链接会过期吗?
会。B站等平台的直链带约 2 小时签名,过期需重新解析。定时入库的业务要注意按这个窗口安排重解析节奏。
抖音链接返回 400 是什么原因?
通常是短链已失效。使用完整有效链接重试。
解析结果能直接发布吗?
不能直接用于公开传播他人作品。接口返回的 source.usage_restriction 限定了合理使用场景,二次创作必须注明来源作者与原平台。接口文档要求调用方在最终用户可见界面展示来源信息。
flat 参数该怎么选?
用 flat=2。它是推荐值,返回单层 data,type 统一输出「视频」「图集」「实况图集」,不受各平台原始类型名干扰。只有需要区分平台原始类型时才用 flat=1,flat=0 是旧版兼容,新接入不建议。
互动数据没有的时候返回什么?
返回 0,不是 null。做数据分析时如果直接累加所有非空值,会把「没有数据」误当成「真的是零」,横向对比时容易得出错误结论。
400 错误一定是链接问题吗?
不一定。400 同时用于参数错误、链接无法访问、解析不到有效内容和点数不足。要结合响应里的 msg 进一步判断原因。