B 站视频详情接口完整介绍与标准 JSON 返回示例

一、接口基础说明

1. 接口基础信息

  • 请求地址:
  • 请求方式:GET
  • 请求参数:bvid(BV 号,推荐)/ aid(AV 号,兼容旧视频)二选一必填
  • 鉴权:游客可查询公开视频;私密 / 审核中视频需 Cookie 登录鉴权
  • 核心能力:输入 BV/AV 号,一次性获取视频标题、封面、简介、UP 主信息、分区标签、分 P 列表、播放 / 点赞 / 投币 / 收藏 / 弹幕全套互动数据,是 B 站内容分析最核心接口。

2. 主流业务场景

  1. UP 主数据监控:定时抓取视频播放、投币、收藏数据,分析账号流量走势
  2. 爆款内容拆解:提取视频标题、标签、简介、互动指标,总结爆款创作规律
  3. 二创素材采集:批量获取封面、文案、分区信息,用于选题参考
  4. 分区内容数据分析:统计不同分区平均播放、互动率,输出行业报表
  5. 品牌舆情监测:检索品牌相关投稿,收集用户视频反馈与口碑

二、标准成功完整 JSON 返回(公开视频完整版)

复制代码
{
    "code": 0,
    "message": "0",
    "ttl": 1,
    "data": {
        "aid": 118923456,
        "bvid": "BV1XW4y1Z789",
        "cid": 234567890,
        "videos": 1,
        "tid": 121,
        "tname": "知识科普",
        "copyright": 1,
        "pic": "https://i1.hdslb.com/bfs/archive/cover_sample.jpg",
        "title": "Python接口开发入门完整教程,零基础可学",
        "pubdate": 1746213600,
        "ctime": 1746208900,
        "desc": "本教程从零讲解API接口开发,包含请求调试、JSON解析、异常处理,适合新手入门,附带完整实战代码示例",
        "state": 0,
        "attribute": 167168,
        "duration": 1486,
        "mission_id": 0,
        "dynamic": "零基础接口开发干货分享,附源码",
        "owner": {
            "mid": 12345678,
            "name": "程序小栈",
            "face": "https://i0.hdslb.com/bfs/face/up_avatar.jpg"
        },
        "stat": {
            "aid": 118923456,
            "view": 126890,
            "danmaku": 3260,
            "reply": 1890,
            "favorite": 9650,
            "coin": 6230,
            "share": 2160,
            "like": 18620,
            "dislike": 126
        },
        "pages": [
            {
                "cid": 234567890,
                "page": 1,
                "from": "vupload",
                "part": "第1节 接口基础概念",
                "duration": 1486,
                "vid": "",
                "weblink": ""
            }
        ],
        "tags": [
            {
                "tag_id": 56789,
                "tag_name": "Python",
                "tag_type": "normal"
            },
            {
                "tag_id": 56790,
                "tag_name": "API开发",
                "tag_type": "normal"
            },
            {
                "tag_id": 56791,
                "tag_name": "编程教程",
                "tag_type": "normal"
            }
        ]
    }
}

三、高频异常错误 JSON 示例

1. 参数错误(aid/bvid 为空或格式错误 code=-400)

复制代码
{
    "code": -400,
    "message": "请求错误",
    "ttl": 1,
    "data": null
}

2. 视频不存在 / 已下架 code=-404

复制代码
{
    "code": -404,
    "message": "不存在该稿件",
    "ttl": 1,
    "data": null
}

3. 视频仅自己可见 / 私密稿件 code=62012

复制代码
{
    "code": 62012,
    "message": "该视频仅UP主本人可见",
    "ttl": 1,
    "data": null
}

4. 视频审核中无法查看 code=62004

复制代码
{
    "code": 62004,
    "message": "稿件审核中,暂不支持查看",
    "ttl": 1,
    "data": null
}

5. 调用频率过高限流(HTTP 429)

复制代码
{
    "code": -503,
    "message": "请求过于频繁,请稍后再试",
    "ttl": 1,
    "data": null
}

四、核心字段分类释义

1. 视频唯一标识

  • bvid:新版视频唯一标识(推荐优先使用)
  • aid:旧版 AV 数字 ID
  • cid:单分 P 视频资源 ID,用于弹幕、播放接口

2. 基础元信息

  • title:视频标题;desc:简介文案;dynamic:动态附带文案
  • pic:高清封面图地址
  • pubdate:发布时间戳;ctime:上传提交时间戳
  • duration:视频总时长,单位秒
  • tid/tname:一级分区 ID、分区名称
  • copyright:1 原创 / 2 转载

3. UP 主信息 owner 对象

  • mid:UP 主 UID;name:昵称;face:头像链接

4. 核心互动数据 stat(B 站特色指标)

  • view:播放量;danmaku:弹幕总数;reply:评论数
  • like:点赞;coin:投币;favorite:收藏;share:转发

5. 分集与标签

  • pages:分 P 数组,多 P 视频包含多条分集信息
  • tags:视频标签数组,包含标签 ID 与标签名称

五、开发接入注意事项

  1. 时间字段pubdate/ctime为 Unix 时间戳,业务展示需手动格式化;
  2. pagestags为数组,代码必须做空值判断,避免解析崩溃;
  3. 无登录 Cookie 时,无法访问私密、审核、仅粉丝可见视频;
  4. 接口存在访问频率限制,批量采集需增加延时,防止触发 429 限流;
  5. 互动数值为数字类型,可直接用于互动率计算;
  6. 仅允许合规数据分析,禁止批量爬取视频资源、倒卖平台数据。