diff --git a/live/info.md b/live/info.md
index fddc2c3..5eeef0a 100644
--- a/live/info.md
+++ b/live/info.md
@@ -1,11 +1,12 @@
# 直播间基本信息
- [直播间基本信息](#直播间基本信息)
- - [获取直播间信息](#获取直播间信息)
- - [获取用户对应的直播间状态](#获取用户对应的直播间状态)
- - [获取房间页初始化信息](#获取房间页初始化信息)
- - [获取主播信息](#获取主播信息)
- - [批量查询直播间状态](#批量查询直播间状态)
+ - [获取直播间信息](#获取直播间信息)
+ - [获取用户对应的直播间状态](#获取用户对应的直播间状态)
+ - [获取房间页初始化信息](#获取房间页初始化信息)
+ - [获取主播信息](#获取主播信息)
+ - [批量查询直播间状态](#批量查询直播间状态)
+ - [获取直播间信息](#获取直播间信息)
---
@@ -16,86 +17,102 @@
*请求方式: GET*
**URL参数:**
-| 参数名 | 类型 | 内容 | 必要性 | 备注 |
-| ------ | ---- | ----------- | ----- | --------- |
-| room_id| num | 直播间号 | 必要 | 可以为短号 |
+
+| 参数名 | 类型 | 内容 | 必要性 | 备注 |
+|---------|-----|------|-----|-------|
+| room_id | num | 直播间号 | 必要 | 可以为短号 |
**json回复:**
根对象:
-| 字段 | 类型 | 内容 | 备注 |
-| ------- | ---- | -------- | --------------------------- |
-| code | num | 返回值 | 0:成功
1:不存在 |
-| message | str | 错误信息 | |
-| msg | str | 错误信息 | |
-| data | obj | 信息本体 | |
+
+| 字段 | 类型 | 内容 | 备注 |
+|---------|-----|------|-----------------|
+| code | num | 返回值 | 0:成功
1:不存在 |
+| message | str | 错误信息 | |
+| msg | str | 错误信息 | |
+| data | obj | 信息本体 | |
`data`对象:
-| 字段 | 类型 | 内容 | 备注 |
-| ------------------ | ---- | -------- | --------------------------- |
-| uid | num | 主播mid | |
-| room_id | num | 直播间长号| |
-| short_id | num | 直播间短号| 为0是无短号 |
-| attention | num | 关注数量 | |
-| online | num | 观看人数 | |
-| is_portrait | bool | 是否竖屏 | |
-| description | str | 描述 | |
-| live_status | num | 直播状态 | 0:未开播
1:直播中
2:轮播中 |
-| area_id | num | 分区id | |
-| area_name | str | 分区名称 | |
-| parent_area_id | num | 父分区id | |
-| parent_area_name | str | 父分区名称 | |
-| old_area_id | num | 旧版分区id | |
-| background | str | 背景图片链接| |
-| title | str | 标题 | |
-| user_cover | str | 封面 | |
-| keyframe | str | 关键帧 | 用于网页端悬浮展示 |
-| is_strict_room | bool | 未知 | 未知 |
-| live_time | str | 直播开始时间 | YYYY-MM-DD HH:mm:ss |
-| tags | str | 标签 | ','分隔 |
-| is_anchor | num | 未知 | 未知 |
-| room_silent_type | str | 禁言状态 | |
-| room_silent_level | num | 禁言等级 | |
-| room_silent_second | num | 禁言时间 | 单位是秒 |
-| pardants | str | 未知 | 未知 |
-| area_pardants | str | 未知 | 未知 |
-| hot_words | list(str) | 热词 | |
-| hot_words_status | num | 热词状态 | |
-| verify | str | 未知 | 未知 |
-| new_pendants | obj | 头像框\大v | |
-| up_session | str | 未知 | |
-| pk_status | num | pk状态 | |
-| pk_id | num | pk id | |
-| battle_id | num | 未知 | |
+
+| 字段 | 类型 | 内容 | 备注 |
+|-------------------------|-----------|--------|-----------------------------|
+| uid | num | 主播mid | |
+| room_id | num | 直播间长号 | |
+| short_id | num | 直播间短号 | 为0是无短号 |
+| attention | num | 关注数量 | |
+| online | num | 观看人数 | |
+| is_portrait | bool | 是否竖屏 | |
+| description | str | 描述 | |
+| live_status | num | 直播状态 | 0:未开播
1:直播中
2:轮播中 |
+| area_id | num | 分区id | |
+| parent_area_id | num | 父分区id | |
+| parent_area_name | str | 父分区名称 | |
+| old_area_id | num | 旧版分区id | |
+| background | str | 背景图片链接 | |
+| title | str | 标题 | |
+| user_cover | str | 封面 | |
+| keyframe | str | 关键帧 | 用于网页端悬浮展示 |
+| is_strict_room | bool | 未知 | 未知 |
+| live_time | str | 直播开始时间 | YYYY-MM-DD HH:mm:ss |
+| tags | str | 标签 | ','分隔 |
+| is_anchor | num | 未知 | 未知 |
+| room_silent_type | str | 禁言状态 | |
+| room_silent_level | num | 禁言等级 | |
+| room_silent_second | num | 禁言时间 | 单位是秒 |
+| area_name | str | 分区名称 | |
+| pardants | str | 未知 | 未知 |
+| area_pardants | str | 未知 | 未知 |
+| hot_words | list(str) | 热词 | |
+| hot_words_status | num | 热词状态 | |
+| verify | str | 未知 | 未知 |
+| new_pendants | obj | 头像框\大v | |
+| up_session | str | 未知 | |
+| pk_status | num | pk状态 | |
+| pk_id | num | pk id | |
+| battle_id | num | 未知 | |
+| allow_change_area_time | num | | |
+| allow_upload_cover_time | num | | |
+| studio_info | obj | | |
`new_pendants`对象:
-| 字段 | 类型 | 内容 | 备注 |
-| ------------ | ---- | -------- | --------------------------- |
-| frame | obj | 头像框 | |
-| mobile_frame | obj | 同上 | 手机版, 结构一致, 可能null |
-| badge | obj | 大v | |
-| mobile_badge | obj | 同上 | 手机版, 结构一致, 可能null |
+
+| 字段 | 类型 | 内容 | 备注 |
+|--------------|-----|-----|-------------------|
+| frame | obj | 头像框 | |
+| mobile_frame | obj | 同上 | 手机版, 结构一致, 可能null |
+| badge | obj | 大v | |
+| mobile_badge | obj | 同上 | 手机版, 结构一致, 可能null |
`frame`对象:
-| 字段 | 类型 | 内容 | 备注 |
-| ------------ | ---- | -------- | --------------------------- |
-| name | str | 名称 ||
-| value | str | 值 ||
-| position | num | 位置 ||
-| desc | str | 描述 ||
-| area | num | 分区 ||
-| area_old | num | 旧分区 ||
-| bg_color | str | 背景色 ||
-| bg_pic | str | 背景图 ||
-| use_old_area | bool | 是否旧分区号 ||
+
+| 字段 | 类型 | 内容 | 备注 |
+|--------------|------|--------|-----|
+| name | str | 名称 | |
+| value | str | 值 | |
+| position | num | 位置 | |
+| desc | str | 描述 | |
+| area | num | 分区 | |
+| area_old | num | 旧分区 | |
+| bg_color | str | 背景色 | |
+| bg_pic | str | 背景图 | |
+| use_old_area | bool | 是否旧分区号 | |
`badge`对象:
-| 字段 | 类型 | 内容 | 备注 |
-| ------------ | ---- | -------- | --------------------------- |
-| name | str | 类型 | v_person: 个人认证(黄)
v_company: 企业认证(蓝) |
-| position | num | 位置 ||
-| value | str | 值 ||
-| desc | str | 描述 ||
+
+| 字段 | 类型 | 内容 | 备注 |
+|----------|-----|-----|-------------------------------------------|
+| name | str | 类型 | v_person: 个人认证(黄)
v_company: 企业认证(蓝) |
+| position | num | 位置 | |
+| value | str | 值 | |
+| desc | str | 描述 | |
+
+`studio_info`对象:
+
+| 字段 | 类型 | 内容 | 备注 |
+|-------------|-------|-----|-----|
+| status | num | | |
+| master_list | array | | |
**示例:**
@@ -111,100 +128,100 @@ curl -G 'https://api.live.bilibili.com/room/v1/Room/get_info' \
```json
{
- "code": 0,
- "msg": "ok",
- "message": "ok",
- "data": {
- "uid": 9617619,
- "room_id": 5440,
- "short_id": 1,
- "attention": 11919499,
- "online": 0,
- "is_portrait": false,
- "description": "欢迎加入bilibili《快乐运动研究社》,和B站UP主们一起探讨有关运动的经历感受,解决身体和情绪的“疑难杂症”,寻找适合自己的运动,一起跟练!本期我们一起探讨:运动健身能缓解社交恐惧吗?",
- "live_status": 2,
- "area_id": 145,
- "parent_area_id": 1,
- "parent_area_name": "娱乐",
- "old_area_id": 6,
- "background": "",
- "title": "快乐运动研究社",
- "user_cover": "https://i0.hdslb.com/bfs/live/new_room_cover/96943b8d106a777a34cf796421bb4254163b30e1.jpg",
- "keyframe": "https://i0.hdslb.com/bfs/live-key-frame/keyframe08121926000000005440np0q7a.jpg",
- "is_strict_room": false,
- "live_time": "0000-00-00 00:00:00",
- "tags": "",
- "is_anchor": 0,
- "room_silent_type": "",
- "room_silent_level": 1,
- "room_silent_second": 0,
- "area_name": "视频聊天",
- "pendants": "",
- "area_pendants": "",
- "hot_words": [
- "2333333",
- "喂,妖妖零吗",
- "红红火火恍恍惚惚",
- "FFFFFFFFFF",
- "Yooooooo",
- "啪啪啪啪啪",
- "666666666",
- "老司机带带我",
- "你为什么这么熟练啊",
- "gg",
- "prprpr",
- "向大佬低头",
- "请大家注意弹幕礼仪哦!",
- "还有这种操作!",
- "囍",
- "打call",
- "你气不气?",
- "队友呢?"
- ],
- "hot_words_status": 0,
- "verify": "",
- "new_pendants": {
- "frame": {
- "name": "",
- "value": "",
- "position": 0,
- "desc": "",
- "area": 0,
- "area_old": 0,
- "bg_color": "",
- "bg_pic": "",
- "use_old_area": false
- },
- "badge": {
- "name": "v_company",
- "position": 3,
- "value": "",
- "desc": "哔哩哔哩直播官方账号"
- },
- "mobile_frame": {
- "name": "",
- "value": "",
- "position": 0,
- "desc": "",
- "area": 0,
- "area_old": 0,
- "bg_color": "",
- "bg_pic": "",
- "use_old_area": false
- },
- "mobile_badge": null
- },
- "up_session": "",
- "pk_status": 0,
- "pk_id": 0,
- "battle_id": 0,
- "allow_change_area_time": 0,
- "allow_upload_cover_time": 0,
- "studio_info": {
- "status": 0,
- "master_list": []
- }
+ "code": 0,
+ "msg": "ok",
+ "message": "ok",
+ "data": {
+ "uid": 9617619,
+ "room_id": 5440,
+ "short_id": 1,
+ "attention": 11919499,
+ "online": 0,
+ "is_portrait": false,
+ "description": "欢迎加入bilibili《快乐运动研究社》,和B站UP主们一起探讨有关运动的经历感受,解决身体和情绪的“疑难杂症”,寻找适合自己的运动,一起跟练!本期我们一起探讨:运动健身能缓解社交恐惧吗?",
+ "live_status": 2,
+ "area_id": 145,
+ "parent_area_id": 1,
+ "parent_area_name": "娱乐",
+ "old_area_id": 6,
+ "background": "",
+ "title": "快乐运动研究社",
+ "user_cover": "https://i0.hdslb.com/bfs/live/new_room_cover/96943b8d106a777a34cf796421bb4254163b30e1.jpg",
+ "keyframe": "https://i0.hdslb.com/bfs/live-key-frame/keyframe08121926000000005440np0q7a.jpg",
+ "is_strict_room": false,
+ "live_time": "0000-00-00 00:00:00",
+ "tags": "",
+ "is_anchor": 0,
+ "room_silent_type": "",
+ "room_silent_level": 1,
+ "room_silent_second": 0,
+ "area_name": "视频聊天",
+ "pendants": "",
+ "area_pendants": "",
+ "hot_words": [
+ "2333333",
+ "喂,妖妖零吗",
+ "红红火火恍恍惚惚",
+ "FFFFFFFFFF",
+ "Yooooooo",
+ "啪啪啪啪啪",
+ "666666666",
+ "老司机带带我",
+ "你为什么这么熟练啊",
+ "gg",
+ "prprpr",
+ "向大佬低头",
+ "请大家注意弹幕礼仪哦!",
+ "还有这种操作!",
+ "囍",
+ "打call",
+ "你气不气?",
+ "队友呢?"
+ ],
+ "hot_words_status": 0,
+ "verify": "",
+ "new_pendants": {
+ "frame": {
+ "name": "",
+ "value": "",
+ "position": 0,
+ "desc": "",
+ "area": 0,
+ "area_old": 0,
+ "bg_color": "",
+ "bg_pic": "",
+ "use_old_area": false
+ },
+ "badge": {
+ "name": "v_company",
+ "position": 3,
+ "value": "",
+ "desc": "哔哩哔哩直播官方账号"
+ },
+ "mobile_frame": {
+ "name": "",
+ "value": "",
+ "position": 0,
+ "desc": "",
+ "area": 0,
+ "area_old": 0,
+ "bg_color": "",
+ "bg_pic": "",
+ "use_old_area": false
+ },
+ "mobile_badge": null
+ },
+ "up_session": "",
+ "pk_status": 0,
+ "pk_id": 0,
+ "battle_id": 0,
+ "allow_change_area_time": 0,
+ "allow_upload_cover_time": 0,
+ "studio_info": {
+ "status": 0,
+ "master_list": []
}
+ }
}
```
@@ -218,35 +235,35 @@ curl -G 'https://api.live.bilibili.com/room/v1/Room/get_info' \
**url参数:**
-| 参数名 | 类型 | 内容 | 必要性 | 备注 |
-| ------ | ---- | ----------- | ------ | ---- |
-| mid | num | 目标用户mid | 必要 | |
+| 参数名 | 类型 | 内容 | 必要性 | 备注 |
+|-----|-----|---------|-----|-----|
+| mid | num | 目标用户mid | 必要 | |
**json回复:**
根对象:
-| 字段 | 类型 | 内容 | 备注 |
-| ------- | ---- | -------- | --------------------------- |
-| code | num | 返回值 | 0:成功
-400:请求错误 |
-| message | str | 错误信息 | 默认为0 |
-| ttl | num | 1 | |
-| data | obj | 信息本体 | |
+| 字段 | 类型 | 内容 | 备注 |
+|---------|-----|------|---------------------|
+| code | num | 返回值 | 0:成功
-400:请求错误 |
+| message | str | 错误信息 | 默认为0 |
+| ttl | num | 1 | |
+| data | obj | 信息本体 | |
`data`对象:
-| 字段 | 类型 | 内容 | 备注 |
-| -------------- | ---- | ---------------- | ------------------------ |
-| roomStatus | num | 直播间状态 | 0:无房间
1:有房间 |
-| roundStatus | num | 轮播状态 | 0:未轮播
1:轮播 |
-| live_status | num | 直播状态 | 0:未开播
1:直播中 |
-| url | str | 直播间网页url | |
-| title | str | 直播间标题 | |
-| cover | str | 直播间封面url | |
-| online | num | 直播间人气 | 值为上次直播时刷新 |
-| roomid | num | 直播间id(短号) | |
-| broadcast_type | num | 0 | |
-| online_hidden | num | 0 | |
+| 字段 | 类型 | 内容 | 备注 |
+|----------------|-----|-----------|------------------|
+| roomStatus | num | 直播间状态 | 0:无房间
1:有房间 |
+| roundStatus | num | 轮播状态 | 0:未轮播
1:轮播 |
+| live_status | num | 直播状态 | 0:未开播
1:直播中 |
+| url | str | 直播间网页url | |
+| title | str | 直播间标题 | |
+| cover | str | 直播间封面url | |
+| online | num | 直播间人气 | 值为上次直播时刷新 |
+| roomid | num | 直播间id(短号) | |
+| broadcast_type | num | 0 | |
+| online_hidden | num | 0 | |
**示例:**
@@ -262,21 +279,21 @@ curl -G 'https://api.live.bilibili.com/room/v1/Room/getRoomInfoOld' \
```json
{
- "code": 0,
- "message": "0",
- "ttl": 1,
- "data": {
- "roomStatus": 1,
- "roundStatus": 0,
- "live_status": 1,
- "url": "https://live.bilibili.com/5441",
- "title": "好久没当黑铁主播了",
- "cover": "http://i0.hdslb.com/bfs/live/room_cover/833f7ff506bac17c06010e8834922993657505b2.jpg",
- "online": 268602,
- "roomid": 5441,
- "broadcast_type": 0,
- "online_hidden": 0
- }
+ "code": 0,
+ "message": "0",
+ "ttl": 1,
+ "data": {
+ "roomStatus": 1,
+ "roundStatus": 0,
+ "live_status": 1,
+ "url": "https://live.bilibili.com/5441",
+ "title": "好久没当黑铁主播了",
+ "cover": "http://i0.hdslb.com/bfs/live/room_cover/833f7ff506bac17c06010e8834922993657505b2.jpg",
+ "online": 268602,
+ "roomid": 5441,
+ "broadcast_type": 0,
+ "online_hidden": 0
+ }
}
```
@@ -290,41 +307,41 @@ curl -G 'https://api.live.bilibili.com/room/v1/Room/getRoomInfoOld' \
**url参数:**
-| 参数名 | 类型 | 内容 | 必要性 | 备注 |
-| ------ | ---- | ----------- | ------ | ---- |
-| id | num | 目标直播间号(短号) | 必要 | |
+| 参数名 | 类型 | 内容 | 必要性 | 备注 |
+|-----|-----|------------|-----|-----|
+| id | num | 目标直播间号(短号) | 必要 | |
**json回复:**
根对象:
-| 字段 | 类型 | 内容 | 备注 |
-| ------- | ---- | -------- | --------------------------- |
-| code | num | 返回值 | 0:成功
60004:直播间不存在 |
-| msg | str | 错误信息 | 默认为ok |
-| message | str | 错误信息 | 默认为ok |
-| data | obj | 信息本体 | |
+| 字段 | 类型 | 内容 | 备注 |
+|---------|-----|------|------------------------|
+| code | num | 返回值 | 0:成功
60004:直播间不存在 |
+| msg | str | 错误信息 | 默认为ok |
+| message | str | 错误信息 | 默认为ok |
+| data | obj | 信息本体 | |
`data`对象:
-| 字段 | 类型 | 内容 | 备注 |
-| -------------- | ---- | ------------- | ------------------------ |
-| room_id | num | 直播间真实id | |
-| short_id | num | 直播间id(短号) | |
-| uid | num | 主播用户mid | |
-| need_p2p | num | 是否p2p | |
-| is_hidden | bool | 是否隐藏 | |
-| is_locked | bool | 是否锁定 | |
-| is_portrait | bool | 是否竖屏 | |
-| live_status | num | 直播状态 | 0:未开播
1:直播中
2:轮播中 |
-| hidden_till | num | 隐藏时间戳 | |
-| lock_till | num | 锁定时间戳 | |
-| encrypted | bool | 是否加密 | |
-| pwd_verified | bool | 加密房间是否通过密码验证 | `encrypted`=true时才有意义 |
-| live_time | num | 开播时间 | 未开播时为`-62170012800` |
-| room_shield | num | 未知 | |
-| is_sp | num | 是否为特殊直播间 | 0:普通直播间
1:付费直播间 |
-| special_type | num | 特殊直播间标志 | 0:普通直播间
1:付费直播间
2:拜年祭直播间 |
+| 字段 | 类型 | 内容 | 备注 |
+|--------------|------|--------------|------------------------------------|
+| room_id | num | 直播间真实id | |
+| short_id | num | 直播间id(短号) | |
+| uid | num | 主播用户mid | |
+| need_p2p | num | 是否p2p | |
+| is_hidden | bool | 是否隐藏 | |
+| is_locked | bool | 是否锁定 | |
+| is_portrait | bool | 是否竖屏 | |
+| live_status | num | 直播状态 | 0:未开播
1:直播中
2:轮播中 |
+| hidden_till | num | 隐藏时间戳 | |
+| lock_till | num | 锁定时间戳 | |
+| encrypted | bool | 是否加密 | |
+| pwd_verified | bool | 加密房间是否通过密码验证 | `encrypted`=true时才有意义 |
+| live_time | num | 开播时间 | 未开播时为`-62170012800` |
+| room_shield | num | 未知 | |
+| is_sp | num | 是否为特殊直播间 | 0:普通直播间
1:付费直播间 |
+| special_type | num | 特殊直播间标志 | 0:普通直播间
1:付费直播间
2:拜年祭直播间 |
**示例:**
@@ -340,27 +357,27 @@ curl -G 'https://api.live.bilibili.com/room/v1/Room/room_init' \
```json
{
- "code":0,
- "msg":"ok",
- "message":"ok",
- "data":{
- "room_id":14073662,
- "short_id":76,
- "uid":50333369,
- "need_p2p":0,
- "is_hidden":false,
- "is_locked":false,
- "is_portrait":false,
- "live_status":1,
- "hidden_till":0,
- "lock_till":0,
- "encrypted":false,
- "pwd_verified":false,
- "live_time":1602151186,
- "room_shield":1,
- "is_sp":0,
- "special_type":0
- }
+ "code": 0,
+ "msg": "ok",
+ "message": "ok",
+ "data": {
+ "room_id": 14073662,
+ "short_id": 76,
+ "uid": 50333369,
+ "need_p2p": 0,
+ "is_hidden": false,
+ "is_locked": false,
+ "is_portrait": false,
+ "live_status": 1,
+ "hidden_till": 0,
+ "lock_till": 0,
+ "encrypted": false,
+ "pwd_verified": false,
+ "live_time": 1602151186,
+ "room_shield": 1,
+ "is_sp": 0,
+ "special_type": 0
+ }
}
```
@@ -374,87 +391,88 @@ curl -G 'https://api.live.bilibili.com/room/v1/Room/room_init' \
**url参数:**
-| 参数名 | 类型 | 内容 | 必要性 | 备注 |
-| ------ | ---- | ----------- | ------ | ---- |
-| uid | num | 目标用户mid | 必要 | |
+| 参数名 | 类型 | 内容 | 必要性 | 备注 |
+|-----|-----|---------|-----|-----|
+| uid | num | 目标用户mid | 必要 | |
**json回复:**
根对象:
-| 字段 | 类型 | 内容 | 备注 |
-| ------- | ---- | -------- | ------------------------ |
-| code | num | 返回值 | 0:成功
1:参数错误 |
-| msg | str | 错误信息 | 默认为空 |
-| message | str | 错误信息 | 默认为空 |
-| data | obj | 信息本体 | |
+| 字段 | 类型 | 内容 | 备注 |
+|---------|-----|------|------------------|
+| code | num | 返回值 | 0:成功
1:参数错误 |
+| msg | str | 错误信息 | 默认为空 |
+| message | str | 错误信息 | 默认为空 |
+| data | obj | 信息本体 | |
`data`对象:
-| 字段 | 类型 | 内容 | 备注 |
-| -------------- | ---- | ---------------- | ---------------- |
-| info | obj | 主播信息 | |
-| exp | obj | 经验等级 | |
-| follower_num | num | 主播粉丝数 | |
-| room_id | num | 直播间id(短号) | |
-| medal_name | str | 粉丝勋章名 | |
-| glory_count | num | 主播荣誉数 | |
-| pendant | str | 直播间头像框url | |
-| link_group_num | num | 0 | **作用尚不明确** |
-| room_news | obj | 主播公告 | |
+| 字段 | 类型 | 内容 | 备注 |
+|----------------|-----|-----------|------------|
+| info | obj | 主播信息 | |
+| exp | obj | 经验等级 | |
+| follower_num | num | 主播粉丝数 | |
+| room_id | num | 直播间id(短号) | |
+| medal_name | str | 粉丝勋章名 | |
+| glory_count | num | 主播荣誉数 | |
+| pendant | str | 直播间头像框url | |
+| link_group_num | num | 0 | **作用尚不明确** |
+| room_news | obj | 主播公告 | |
`info`对象:
-| 字段 | 类型 | 内容 | 备注 |
-| --------------- | ---- | ----------- | ------------------------------ |
-| uid | num | 主播mid | |
-| uname | str | 主播用户名 | |
-| face | str | 主播头像url | |
-| official_verify | obj | 认证信息 | |
-| gender | num | 主播性别 | -1:保密
0:女
1:男 |
+| 字段 | 类型 | 内容 | 备注 |
+|-----------------|-----|---------|-------------------------|
+| uid | num | 主播mid | |
+| uname | str | 主播用户名 | |
+| face | str | 主播头像url | |
+| official_verify | obj | 认证信息 | |
+| gender | num | 主播性别 | -1:保密
0:女
1:男 |
`info`中的`official_verify`对象:
-| 字段 | 类型 | 内容 | 备注 |
-| ---- | ---- | ------------ | ---------------------------------------- |
-| type | num | 主播认证类型 | -1:无
0:个人认证
1:机构认证 |
-| desc | str | 主播认证信息 | |
+
+| 字段 | 类型 | 内容 | 备注 |
+|------|-----|--------|------------------------------|
+| type | num | 主播认证类型 | -1:无
0:个人认证
1:机构认证 |
+| desc | str | 主播认证信息 | |
`exp`对象:
-| 字段 | 类型 | 内容 | 备注 |
-| ------------ | ---- | -------- | ---- |
-| master_level | obj | 主播等级 | |
+| 字段 | 类型 | 内容 | 备注 |
+|--------------|-----|------|-----|
+| master_level | obj | 主播等级 | |
`exp`中的`master_level`对象:
-| 字段 | 类型 | 内容 | 备注 |
-| ------- | ----- | ------------ | ---- |
-| level | num | 当前等级 | |
-| color | num | 等级框颜色 | |
-| current | array | 当前等级信息 | |
-| next | array | 下一等级信息 | |
+| 字段 | 类型 | 内容 | 备注 |
+|---------|-------|--------|-----|
+| level | num | 当前等级 | |
+| color | num | 等级框颜色 | |
+| current | array | 当前等级信息 | |
+| next | array | 下一等级信息 | |
`master_level`中的`current`数组:
-| 项 | 类型 | 内容 | 备注 |
-| ---- | ---- | -------- | ---- |
-| 0 | num | 升级积分 | |
-| 1 | num | 总积分 | |
+| 项 | 类型 | 内容 | 备注 |
+|-----|-----|------|-----|
+| 0 | num | 升级积分 | |
+| 1 | num | 总积分 | |
`master_level`中的`next`数组:
-| 项 | 类型 | 内容 | 备注 |
-| ---- | ---- | -------- | ---- |
-| 0 | num | 升级积分 | |
-| 1 | num | 总积分 | |
+| 项 | 类型 | 内容 | 备注 |
+|-----|-----|------|-----|
+| 0 | num | 升级积分 | |
+| 1 | num | 总积分 | |
`room_news`对象:
-| 字段 | 类型 | 内容 | 备注 |
-| ---------- | ---- | -------- | ---- |
-| content | str | 公告内容 | |
-| ctime | str | 公告时间 | |
-| ctime_text | str | 公告日期 | |
+| 字段 | 类型 | 内容 | 备注 |
+|------------|-----|------|-----|
+| content | str | 公告内容 | |
+| ctime | str | 公告时间 | |
+| ctime_text | str | 公告日期 | |
**示例:**
@@ -470,46 +488,46 @@ curl -G 'https://api.live.bilibili.com/live_user/v1/Master/info' \
```json
{
- "code": 0,
- "msg": "",
- "message": "",
- "data": {
- "info": {
- "uid": 2,
- "uname": "碧诗",
- "face": "https://i0.hdslb.com/bfs/face/ef0457addb24141e15dfac6fbf45293ccf1e32ab.jpg",
- "official_verify": {
- "type": 0,
- "desc": "bilibili个人认证:bilibili创始人(站长)"
- },
- "gender": 1
- },
- "exp": {
- "master_level": {
- "level": 30,
- "color": 10512625,
- "current": [
- 2870000,
- 11883810
- ],
- "next": [
- 3730000,
- 15613810
- ]
- }
- },
- "follower_num": 926624,
- "room_id": 1024,
- "medal_name": "逸国",
- "glory_count": 0,
- "pendant": "",
- "link_group_num": 0,
- "room_news": {
- "content": "",
- "ctime": "",
- "ctime_text": ""
- }
- }
+ "code": 0,
+ "msg": "",
+ "message": "",
+ "data": {
+ "info": {
+ "uid": 2,
+ "uname": "碧诗",
+ "face": "https://i0.hdslb.com/bfs/face/ef0457addb24141e15dfac6fbf45293ccf1e32ab.jpg",
+ "official_verify": {
+ "type": 0,
+ "desc": "bilibili个人认证:bilibili创始人(站长)"
+ },
+ "gender": 1
+ },
+ "exp": {
+ "master_level": {
+ "level": 30,
+ "color": 10512625,
+ "current": [
+ 2870000,
+ 11883810
+ ],
+ "next": [
+ 3730000,
+ 15613810
+ ]
+ }
+ },
+ "follower_num": 926624,
+ "room_id": 1024,
+ "medal_name": "逸国",
+ "glory_count": 0,
+ "pendant": "",
+ "link_group_num": 0,
+ "room_news": {
+ "content": "",
+ "ctime": "",
+ "ctime_text": ""
+ }
+ }
}
```
@@ -525,61 +543,60 @@ curl -G 'https://api.live.bilibili.com/live_user/v1/Master/info' \
**url参数 (GET方式):**
-| 参数名 | 类型 | 内容 | 必要性 | 备注 |
-| ------ | ----- | ---------------- | ------ | ---- |
-| uids[] | array | 要查询的主播 mid | 必要 | |
+| 参数名 | 类型 | 内容 | 必要性 | 备注 |
+|--------|-------|------------|-----|-----|
+| uids[] | array | 要查询的主播 mid | 必要 | |
**正文参数 (POST方式):**
-| 参数名 | 类型 | 内容 | 必要性 | 备注 |
-| ---------- | ---- | ------------------------ | -------------- | ------------------------------------------------------------ |
-| uids | nums | 要查询的主播 mid | 必要 | |
-
+| 参数名 | 类型 | 内容 | 必要性 | 备注 |
+|------|------|------------|-----|-----|
+| uids | nums | 要查询的主播 mid | 必要 | |
**json回复:**
根对象:
-| 字段 | 类型 | 内容 | 备注 |
-| ------- | ---- | -------- | ------------------------------------------------------------ |
-| code | num | 返回值 | 0:成功
-111:csrf校验失败 |
-| message | str | 错误信息 | 默认为success |
-| msg | str | 错误信息 | 默认为success |
-| ttl | num | 1 | |
-| data | obj | 信息本体 | |
+| 字段 | 类型 | 内容 | 备注 |
+|---------|-----|------|-------------------------|
+| code | num | 返回值 | 0:成功
-111:csrf校验失败 |
+| message | str | 错误信息 | 默认为success |
+| msg | str | 错误信息 | 默认为success |
+| ttl | num | 1 | |
+| data | obj | 信息本体 | |
`data`对象:
-| 字段 | 类型 | 内容 | 备注 |
-| -------- | ---- | -------- | ------------ |
-| uid | str | 直播间信息 | 实际字段为主播mid |
+| 字段 | 类型 | 内容 | 备注 |
+|-----|-----|-------|------------|
+| uid | str | 直播间信息 | 实际字段为主播mid |
`uid`对象:
-| 字段 | 类型 | 内容 | 备注 |
-| -------- | ---- | -------- | ------------ |
-| area | num | 直播间分区id | |
-| area_name | str | 直播间分区名 | |
-| area_v2_id | num | 直播间新版分区id | |
-| area_v2_name | str | 直播间新版分区名 | |
-| area_v2_parent_id | num | 直播间父分区id | |
-| area_v2_parent_name | str | 直播间父分区名 | |
-| broadcast_type | num | 直播类型 | 0:普通直播
1:手机直播 |
-| cover_from_user | str | 直播间封面url | |
-| face | str | 主播头像url | |
-| hidden_till | str | 直播间隐藏信息 | |
-| keyframe | str | 直播间关键帧url | |
-| live_status | num | 直播间开播状态 | 0:未开播
1:正在直播
2:轮播中 |
-| live_time | num | 直播持续时长 | |
-| lock_till | str | 直播间封禁信息 | |
-| online | num | 直播间在线人数 | |
-| room_id | num | 直播间房间号 | 直播间实际房间号 |
-| short_id | num | 直播间房间号 | 直播间短房间号,常见于签约主播 |
-| tag_name | str | 直播间标签 | |
-| tags | str | 直播间自定标签 | |
-| title | str | 直播间标题 | |
-| uid | num | 主播mid | |
-| uname | str | 主播用户名 | |
+| 字段 | 类型 | 内容 | 备注 |
+|---------------------|-----|-----------|------------------------------|
+| title | str | 直播间标题 | |
+| room_id | num | 直播间房间号 | 直播间实际房间号 |
+| uid | num | 主播mid | |
+| online | num | 直播间在线人数 | |
+| live_time | num | 直播持续时长 | |
+| live_status | num | 直播间开播状态 | 0:未开播
1:正在直播
2:轮播中 |
+| short_id | num | 直播间房间号 | 直播间短房间号,常见于签约主播 |
+| area | num | 直播间分区id | |
+| area_name | str | 直播间分区名 | |
+| area_v2_id | num | 直播间新版分区id | |
+| area_v2_name | str | 直播间新版分区名 | |
+| area_v2_parent_id | num | 直播间父分区id | |
+| area_v2_parent_name | str | 直播间父分区名 | |
+| uname | str | 主播用户名 | |
+| face | str | 主播头像url | |
+| tag_name | str | 直播间标签 | |
+| tags | str | 直播间自定标签 | |
+| cover_from_user | str | 直播间封面url | |
+| keyframe | str | 直播间关键帧url | |
+| lock_till | str | 直播间封禁信息 | |
+| hidden_till | str | 直播间隐藏信息 | |
+| broadcast_type | num | 直播类型 | 0:普通直播
1:手机直播 |
**示例:**
@@ -601,36 +618,354 @@ curl 'https://api.live.bilibili.com/room/v1/Room/get_status_info_by_uids' \
```json
{
- "code": 0,
- "msg": "success",
- "message": "success",
- "data": {
- "672328094": {
- "title": "【B限】玩个毛线",
- "room_id": 22637261,
- "uid": 672328094,
- "online": 4087370,
- "live_time": 0,
- "live_status": 2,
- "short_id": 0,
- "area": 6,
- "area_name": "生活娱乐",
- "area_v2_id": 371,
- "area_v2_name": "虚拟主播",
- "area_v2_parent_name": "虚拟主播",
- "area_v2_parent_id": 9,
- "uname": "嘉然今天吃什么",
- "face": "http://i2.hdslb.com/bfs/face/d399d6f5cf7943a996ae96999ba3e6ae2a2988de.jpg",
- "tag_name": "日常,学习,萌宠,厨艺,手机直播",
- "tags": "",
- "cover_from_user": "http://i0.hdslb.com/bfs/live/new_room_cover/f3ed7a782c13086e536ec8bc6e9593bb4918f905.jpg",
- "keyframe": "http://i0.hdslb.com/bfs/live-key-frame/keyframe041722000000226372619dr3m8.jpg",
- "lock_till": "0000-00-00 00:00:00",
- "hidden_till": "0000-00-00 00:00:00",
- "broadcast_type": 0
- }
+ "code": 0,
+ "msg": "success",
+ "message": "success",
+ "data": {
+ "672328094": {
+ "title": "【B限】玩个毛线",
+ "room_id": 22637261,
+ "uid": 672328094,
+ "online": 4087370,
+ "live_time": 0,
+ "live_status": 2,
+ "short_id": 0,
+ "area": 6,
+ "area_name": "生活娱乐",
+ "area_v2_id": 371,
+ "area_v2_name": "虚拟主播",
+ "area_v2_parent_name": "虚拟主播",
+ "area_v2_parent_id": 9,
+ "uname": "嘉然今天吃什么",
+ "face": "http://i2.hdslb.com/bfs/face/d399d6f5cf7943a996ae96999ba3e6ae2a2988de.jpg",
+ "tag_name": "日常,学习,萌宠,厨艺,手机直播",
+ "tags": "",
+ "cover_from_user": "http://i0.hdslb.com/bfs/live/new_room_cover/f3ed7a782c13086e536ec8bc6e9593bb4918f905.jpg",
+ "keyframe": "http://i0.hdslb.com/bfs/live-key-frame/keyframe041722000000226372619dr3m8.jpg",
+ "lock_till": "0000-00-00 00:00:00",
+ "hidden_till": "0000-00-00 00:00:00",
+ "broadcast_type": 0
}
+ }
}
```
+
+## 清晰度代码
+
+| 代码 | 说明 |
+|-------|-----|
+| 30000 | 杜比 |
+| 20000 | 4K |
+| 10000 | 原画 |
+| 400 | 蓝光 |
+| 250 | 超清 |
+| 150 | 高清 |
+| 80 | 流畅 |
+
+## 获取直播间信息
+
+> https://api.live.bilibili.com/xlive/web-room/v2/index/getRoomPlayInfo
+
+*请求方式:GET*
+
+认证方式:无 (无需添加Cookie)
+
+**url参数 (GET方式):**
+
+| 参数名 | 类型 | 内容 | 必填 | 备注 |
+|----------|-----|-------|-----|------------------------------------------------|
+| room_id | num | 直播间id | 必要 | |
+| protocol | str | 直播协议 | 必要 | 0:http_stream
1:http_hls
可多选, 使用英文逗号分隔 |
+| format | str | 格式 | 必要 | 0:flv
1:ts
2:fmp4
可多选, 使用英文逗号分隔 |
+| codec | str | 编码格式 | 必要 | 0:AVC
1:HEVC
可多选, 使用英文逗号分隔 |
+| qn | num | 清晰度编码 | | 默认`150`
[清晰度代码](#清晰度代码) |
+| platform | str | `web` | | |
+| ptype | num | `8` | | |
+| dolby | num | `5` | | |
+| panorama | num | `1` | | |
+
+**json回复:**
+
+根对象:
+
+| 字段名 | 类型 | 内容 | 备注 |
+|---------|-----|------|-----------------------|
+| code | num | 响应码 | 0:成功
1002002:参数错误 |
+| message | str | 0 | |
+| ttl | num | 1 | |
+| data | obj | 信息本体 | |
+
+`data`对象:
+
+| 字段名 | 类型 | 内容 | 备注 |
+|-------------------|-------|-----------|---------------------------|
+| room_id | num | 直播间id | |
+| short_id | num | 直播间短id | |
+| uid | num | 主播uid | |
+| is_hidden | bool | 直播间是否被隐藏 | |
+| is_locked | bool | 直播间是否被锁定 | |
+| is_portrait | bool | 是否竖屏 | |
+| live_status | num | 直播状态 | 0:未开播
1:直播中
2:轮播中 |
+| hidden_till | num | 隐藏结束时间 | |
+| lock_till | num | 封禁结束时间 | 秒级时间戳 |
+| encrypted | bool | 直播间为加密直播间 | |
+| pwd_verified | bool | 是否通过密码验证 | 当`encrypted`为`true`时才有意义 |
+| live_time | num | 本次开播时间 | 秒级时间戳 |
+| room_shield | num | | |
+| all_special_types | array | | |
+| playurl_info | obj | 直播流信息 | |
+
+`playurl_info`对象
+
+| 字段名 | 类型 | 内容 | 备注 |
+|-----------|-----|-----|-----|
+| conf_json | str | | |
+| playurl | obj | | |
+
+`playurl`对象
+
+| 字段名 | 类型 | 内容 | 备注 |
+|-----------|-------|-------|-----|
+| cid | num | 直播间id | |
+| g_qn_desc | array | 清晰度列表 | |
+| stream | array | 直播流信息 | |
+| p2p_data | obj | | |
+| dolby_qn | | | |
+
+`g_qn_desc`数组中的对象
+
+| 字段名 | 类型 | 内容 | 备注 |
+|-----------|-----|-------|-----------------|
+| qn | num | 清晰度代码 | [清晰度代码](#清晰度代码) |
+| desc | str | 清晰度描述 | |
+| hdr_desc | str | | |
+| attr_desc | | | |
+
+`stream`数组中的对象
+
+| 字段名 | 类型 | 内容 | 备注 |
+|---------------|-------|------|-----|
+| protocol_name | str | 协议名 | |
+| format | array | 格式列表 | |
+
+`format`数组中的对象
+
+| 字段名 | 类型 | 内容 | 备注 |
+|-------------|-------|------|-----|
+| format_name | str | 格式名 | |
+| codec | array | 编码列表 | |
+
+`codec`数组中的对象
+
+| 字段名 | 类型 | 内容 | 备注 |
+|------------|-------|-----------|-----------------|
+| codec_name | str | 编码名 | |
+| current_qn | num | 当前清晰度编码 | [清晰度代码](#清晰度代码) |
+| accept_qn | array | 可用清晰度编码列表 | [清晰度代码](#清晰度代码) |
+| base_url | str | 播放源路径 | |
+| url_info | array | 域名信息列表 | |
+| hdr_qn | null | | |
+| dolby_type | num | | |
+| attr_name | str | | |
+
+`url_info`数组中的对象
+
+| 字段名 | 类型 | 内容 | 备注 |
+|------------|-----|-------|-----|
+| host | str | 域名 | |
+| extra | str | URL参数 | |
+| stream_ttl | num | | |
+
+`p2p_data`对象
+
+| 字段名 | 类型 | 内容 | 备注 |
+|-----------|------|-----|-----|
+| p2p | bool | | |
+| p2p_type | num | | |
+| m_p2p | bool | | |
+| m_servers | null | | |
+
+**示例:**
+
+查询room_id=3的直播间信息
+
+```shell
+curl -L -X GET 'https://api.live.bilibili.com/xlive/web-room/v2/index/getRoomPlayInfo?room_id=3&protocol=0,1&format=0,1,2&codec=0,1&qn=10000'
+```
+
+
+查看响应示例:
+
+```json
+{
+ "code": 0,
+ "message": "0",
+ "ttl": 1,
+ "data": {
+ "room_id": 23058,
+ "short_id": 3,
+ "uid": 11153765,
+ "is_hidden": false,
+ "is_locked": false,
+ "is_portrait": false,
+ "live_status": 1,
+ "hidden_till": 0,
+ "lock_till": 0,
+ "encrypted": false,
+ "pwd_verified": true,
+ "live_time": 1671425336,
+ "room_shield": 1,
+ "all_special_types": [],
+ "playurl_info": {
+ "conf_json": "{\"cdn_rate\":10000,\"report_interval_sec\":150}",
+ "playurl": {
+ "cid": 23058,
+ "g_qn_desc": [
+ {
+ "qn": 30000,
+ "desc": "杜比",
+ "hdr_desc": "",
+ "attr_desc": null
+ },
+ {
+ "qn": 20000,
+ "desc": "4K",
+ "hdr_desc": "",
+ "attr_desc": null
+ },
+ {
+ "qn": 10000,
+ "desc": "原画",
+ "hdr_desc": "",
+ "attr_desc": null
+ },
+ {
+ "qn": 400,
+ "desc": "蓝光",
+ "hdr_desc": "HDR",
+ "attr_desc": null
+ },
+ {
+ "qn": 250,
+ "desc": "超清",
+ "hdr_desc": "HDR",
+ "attr_desc": null
+ },
+ {
+ "qn": 150,
+ "desc": "高清",
+ "hdr_desc": "",
+ "attr_desc": null
+ },
+ {
+ "qn": 80,
+ "desc": "流畅",
+ "hdr_desc": "",
+ "attr_desc": null
+ }
+ ],
+ "stream": [
+ {
+ "protocol_name": "http_stream",
+ "format": [
+ {
+ "format_name": "flv",
+ "codec": [
+ {
+ "codec_name": "avc",
+ "current_qn": 10000,
+ "accept_qn": [
+ 10000,
+ 150
+ ],
+ "base_url": "/live-bvc/462997/live_11153765_9369560.flv?",
+ "url_info": [
+ {
+ "host": "https://cn-hbcd-cu-02-20.bilivideo.com",
+ "extra": "expires=1674103815&pt=web&deadline=1674103815&len=0&oi=1963941079&platform=web&qn=10000&trid=1000061f434c07ac4f4184820bfb141e75e8&uipk=100&uipv=100&nbs=1&uparams=cdn,deadline,len,oi,platform,qn,trid,uipk,uipv,nbs&cdn=cn-gotcha01&upsig=f494aa9e92e24943061fe5082494ec44&sk=33541455720f64c7671bc1480acfb176&p2p_type=1&src=57345&sl=1&free_type=0&sid=cn-hbcd-cu-02-20&chash=1&sche=ban&score=12&pp=rtmp&machinezone=jd&source=onetier&trace=0&site=92e80b6f3ebfd393e7d1c1e2e648d9c1&order=1",
+ "stream_ttl": 3600
+ }
+ ],
+ "hdr_qn": null,
+ "dolby_type": 0,
+ "attr_name": ""
+ }
+ ]
+ }
+ ]
+ },
+ {
+ "protocol_name": "http_hls",
+ "format": [
+ {
+ "format_name": "ts",
+ "codec": [
+ {
+ "codec_name": "avc",
+ "current_qn": 10000,
+ "accept_qn": [
+ 10000,
+ 150
+ ],
+ "base_url": "/live-bvc/462997/live_11153765_9369560.m3u8?",
+ "url_info": [
+ {
+ "host": "https://cn-hbcd-cu-02-20.bilivideo.com",
+ "extra": "expires=1674103815&len=0&oi=1963941079&pt=web&qn=10000&trid=1003061f434c07ac4f4184820bfb141e75e8&sigparams=cdn,expires,len,oi,pt,qn,trid&cdn=cn-gotcha01&sign=4f9bcec18e3afdca04b31ffb285ec915&sk=33541455720f64c7671bc1480acfb176&p2p_type=1&src=57345&sl=1&free_type=0&sid=cn-hbcd-cu-02-20&chash=1&sche=ban&score=12&pp=rtmp&machinezone=jd&source=onetier&trace=0&site=92e80b6f3ebfd393e7d1c1e2e648d9c1&order=1",
+ "stream_ttl": 3600
+ }
+ ],
+ "hdr_qn": null,
+ "dolby_type": 0,
+ "attr_name": ""
+ }
+ ]
+ },
+ {
+ "format_name": "fmp4",
+ "codec": [
+ {
+ "codec_name": "avc",
+ "current_qn": 10000,
+ "accept_qn": [
+ 10000,
+ 150
+ ],
+ "base_url": "/live-bvc/462997/live_11153765_9369560/index.m3u8?",
+ "url_info": [
+ {
+ "host": "https://cn-hbcd-cu-02-20.bilivideo.com",
+ "extra": "expires=1674103815&len=0&oi=1963941079&pt=web&qn=10000&trid=1007061f434c07ac4f4184820bfb141e75e8&sigparams=cdn,expires,len,oi,pt,qn,trid&cdn=cn-gotcha01&sign=cc57dce528316d8389f2f34e7bd15f5c&sk=a99391b8b4d5779b2e32e41dbc989d2d&flvsk=33541455720f64c7671bc1480acfb176&p2p_type=1&src=57345&sl=1&free_type=0&sid=cn-hbcd-cu-02-20&chash=1&sche=ban&bvchls=1&score=12&pp=rtmp&machinezone=jd&source=onetier&trace=0&site=92e80b6f3ebfd393e7d1c1e2e648d9c1&order=1",
+ "stream_ttl": 3600
+ },
+ {
+ "host": "https://c1--cn-gotcha208.bilivideo.com",
+ "extra": "expires=1674103815&len=0&oi=1963941079&pt=web&qn=10000&trid=1007061f434c07ac4f4184820bfb141e75e8&sigparams=cdn,expires,len,oi,pt,qn,trid&cdn=cn-gotcha208&sign=2ff96adf5056c8dbee546955260fc2df&sk=a99391b8b4d5779b2e32e41dbc989d2d&p2p_type=1&src=57345&sl=1&free_type=0&pp=rtmp&machinezone=jd&source=onetier&trace=0&site=92e80b6f3ebfd393e7d1c1e2e648d9c1&order=2",
+ "stream_ttl": 3600
+ }
+ ],
+ "hdr_qn": null,
+ "dolby_type": 0,
+ "attr_name": ""
+ }
+ ]
+ }
+ ]
+ }
+ ],
+ "p2p_data": {
+ "p2p": true,
+ "p2p_type": 1,
+ "m_p2p": false,
+ "m_servers": null
+ },
+ "dolby_qn": null
+ }
+ }
+ }
+}
+```
+
+
\ No newline at end of file