From 08b0207c605164b15d7ab693a534c242e9d83b77 Mon Sep 17 00:00:00 2001 From: SocialSisterYi <45892418+SocialSisterYi@users.noreply.github.com> Date: Sat, 21 Mar 2020 14:37:55 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=A0=BC=E5=BC=8F&=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E5=9B=BE=E6=A0=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 2 + README.md | 5 +- danmaku/danmaku.md | 41 +++++--- danmaku/history.md | 43 ++++++-- danmaku/snapshot.md | 12 +-- imgs/add.svg | 20 ++++ imgs/ban.png | Bin 0 -> 5472 bytes imgs/{bili_icon.woff => bili_icon1.woff} | Bin imgs/bili_icon2.woff2 | Bin 0 -> 4740 bytes imgs/bili_icon3.woff2 | Bin 0 -> 15816 bytes imgs/delete.svg | 9 ++ imgs/follow.svg | 23 +++++ imgs/relation.svg | 10 ++ login/QR.md | 58 ++++++++--- login/login_info.md | 39 +++---- user/info.md | 78 +++++++++----- user/relation.md | 126 +++++++++++++---------- user/status_number.md | 29 ++++-- video/info.md | 42 ++++---- video/like_coin_fav.md | 66 +++++------- video/recommend.md | 10 +- video/snapshot.md | 51 ++++----- video/status_number.md | 28 ++--- 23 files changed, 430 insertions(+), 262 deletions(-) create mode 100644 imgs/add.svg create mode 100644 imgs/ban.png rename imgs/{bili_icon.woff => bili_icon1.woff} (100%) create mode 100644 imgs/bili_icon2.woff2 create mode 100644 imgs/bili_icon3.woff2 create mode 100644 imgs/delete.svg create mode 100644 imgs/follow.svg create mode 100644 imgs/relation.svg diff --git a/.gitignore b/.gitignore index c03ebc0..3e0d011 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,5 @@ login/password&SMS.md B站API.txt login/msg.md live/info_flow.md +bangumi/info.md +bangumi/ststus_number.md diff --git a/README.md b/README.md index 2946102..c1348ba 100644 --- a/README.md +++ b/README.md @@ -37,8 +37,11 @@ - TAG - [视频推荐](video/recommend.md)√ - 播放&下载地址 + - 互动视频 - 实时观看人数 - 番剧 + - 基本信息 + - 状态数 - [视频弹幕](danmaku) - [实时弹幕&弹幕格式](danmaku/danmaku.md)√ - [历史弹幕](danmaku/history.md)√ @@ -74,7 +77,7 @@ - 直播视频流 - 直播信息流 - B币钱包 -- 漫画 +- 哔哩哔哩漫画 - 轻视频 - 哔哩哔哩游戏 - 会员购 diff --git a/danmaku/danmaku.md b/danmaku/danmaku.md index 33aa527..ea378ae 100644 --- a/danmaku/danmaku.md +++ b/danmaku/danmaku.md @@ -6,12 +6,12 @@ ## 获取实时弹幕1 -**使用deflate压缩,使用时注意解码** - -api.bilibili.com/x/v1/dm/list.so +http://api.bilibili.com/x/v1/dm/list.so *方式:GET* +**使用deflate压缩,注意解码** + 参数: | 参数名 | 内容 | 必要性 | 备注 | @@ -24,14 +24,14 @@ http://api.bilibili.com/x/v1/dm/list.so?oid=144541892 ## 获取实时弹幕2 -与前者使用效果相同 - -**使用deflate压缩,使用时注意解码** - -comment.bilibili.com/{cid}.xml +http://comment.bilibili.com/{cid}.xml *方式:GET* +效果与前者相同 + +**使用deflate压缩,注意解码** + 参数: | 参数名 | 内容 | 必要性 | 备注 | @@ -101,7 +101,7 @@ http://comment.bilibili.com/144541892.xml | 3 | 弹幕颜色 | int | 十进制RGB888值 | | 4 | 弹幕发送时间 | int | 时间戳 | | 5 | 弹幕池类型 | int | 0普通池
1字幕池
2特殊池(高级弹幕) | -| 6 | 编码后的用户ID | HEX | 用于屏蔽用户 也可反查用户ID | +| 6 | 编码后的用户ID | HEX | 用于屏蔽用户和查看用户发送的所有弹幕 也可反查用户ID | | 7 | 弹幕ID | int | 唯一 可用于操作参数 | ```xml @@ -114,9 +114,22 @@ http://comment.bilibili.com/144541892.xml ### web版标准颜色 -| | | | -| ---- | ---- | ---- | -| | | | -| | | | -| | | | +弹幕的颜色属性使用**十进制RGB888**值 + +| 颜色 | HEX(RGB888) | DEC(RGB888) | +| --------------------------------- | ----------------------------------- | ------------------------------------- | +| 红色 | FE0302 | 16646914‬ | +| 橘红 | FF7204 | 16740868 | +| 橘黄 | FFAA02 | 16755202 | +| 淡黄 | FFD302 | 16765698 | +| 黄色 | FFFF00 | 16776960 | +| 草绿 | A0EE00 | 10546688 | +| 绿色 | 00CD00 | 52480 | +| 墨绿 | 019899 | 104601 | +| 紫色 | 4266BE | 4351678 | +| 青色 | 89D5FF | 9022215 | +| 品红 | CC0273 | 13369971 | +| 黑色 | 222222 | 2236962 | +| 灰色 | 9B9B9B | 10197915 | +| 白色 | FFFFFF | 16777215 | diff --git a/danmaku/history.md b/danmaku/history.md index 18c3009..13e6bfd 100644 --- a/danmaku/history.md +++ b/danmaku/history.md @@ -10,11 +10,28 @@ http://api.bilibili.com/x/v2/dm/history/index 参数: -| 参数名 | 内容 | 必要性 | 备注 | -| ------ | ------- | ------ | ---- | -| type | 1 | 必要 | 作用尚不明确 | -| oid | 视频CID | 必要 | | -| month | 查询月份 | 必要 | mm-dd | +| 参数名 | 内容 | 必要性 | 备注 | +| ------ | -------- | ------ | ------------ | +| type | 1 | 必要 | 作用尚不明确 | +| oid | 视频CID | 必要 | | +| month | 查询月份 | 必要 | mm-dd | + +**json回复:** + +| 字段 | 类型 | 内容 | 备注 | +| ------- | --------------------------- | -------- | ------------------------------------------- | +| code | num | 返回值 | 0成功
-400请求错误
-101账号未登录 | +| message | str | 错误信息 | 默认为0 | +| ttl | num | 1 | 作用尚不明确 | +| data | 有弹幕array
无弹幕null | 日期列表 | | + +`data`数组: + +| 项 | 类型 | 内容 | 备注 | +| ---- | ---- | ------------------- | ---------- | +| 0 | str | 存在弹幕的日期1 | yyyy-mm-dd | +| n | str | 存在弹幕的日期(n+1) | yyyy-mm-dd | +| …… | str | …… | …… | 示例: @@ -58,17 +75,21 @@ http://api.bilibili.com/x/v2/dm/history/index?type=1&oid=144541892&month=2019-12 ## 获取历史弹幕 -https://api.bilibili.com/x/v2/dm/history +http://api.bilibili.com/x/v2/dm/history *方式:GET* +结果为标准xml格式弹幕 + +**使用deflate压缩,注意解码** + 参数: -| 参数名 | 内容 | 必要性 | 备注 | -| ------ | ------- | ------ | ---- | -| type | 1 | 必要 | 作用尚不明确 | -| oid | 视频CID | 必要 | | -| date | 弹幕日期 | 必要 | yyyy-mm-dd | +| 参数名 | 内容 | 必要性 | 备注 | +| ------ | -------- | ------ | ------------ | +| type | 1 | 必要 | 作用尚不明确 | +| oid | 视频CID | 必要 | | +| date | 弹幕日期 | 必要 | yyyy-mm-dd | 示例: diff --git a/danmaku/snapshot.md b/danmaku/snapshot.md index 23fdfc0..28180cf 100644 --- a/danmaku/snapshot.md +++ b/danmaku/snapshot.md @@ -2,14 +2,14 @@ ## 获取弹幕快照 +http://api.bilibili.com/x/v2/dm/ajax + +*方式:GET* + 最近产生的几条弹幕内容 **最多20条** -api.bilibili.com/x/v2/dm/ajax - -*方式:GET* - 参数: | 参数名 | 内容 | 必要性 | 备注 | @@ -25,7 +25,7 @@ api.bilibili.com/x/v2/dm/ajax | ttl | num | 1 | 作用尚不明确 | | data | array | 预览列表 | | -data 数组: +`data`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | --------------- | -------- | @@ -38,7 +38,7 @@ data 数组: http://api.bilibili.com/x/v2/dm/ajax?aid=43337021 -``` +```json { "code": 0, "message": "0", diff --git a/imgs/add.svg b/imgs/add.svg new file mode 100644 index 0000000..ecdea95 --- /dev/null +++ b/imgs/add.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + diff --git a/imgs/ban.png b/imgs/ban.png new file mode 100644 index 0000000000000000000000000000000000000000..a51f5b95d53282261f3cfa7ec13f88ab4e9f655b GIT binary patch literal 5472 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 SJUhA#T!9KY$)P>uyl(|fgCG+C literal 0 HcmV?d00001 diff --git a/imgs/bili_icon3.woff2 b/imgs/bili_icon3.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..dfa8160938ee35dca937120b2dbda89ad540983b GIT binary patch literal 15816 zcmV;(JvYL4Pew8T0RR9106oY63jhEB0C8*p06la70RR9100000000000000000000 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 + + \ No newline at end of file diff --git a/imgs/follow.svg b/imgs/follow.svg new file mode 100644 index 0000000..900076b --- /dev/null +++ b/imgs/follow.svg @@ -0,0 +1,23 @@ + + + + + + + + + + diff --git a/imgs/relation.svg b/imgs/relation.svg new file mode 100644 index 0000000..a9e42ec --- /dev/null +++ b/imgs/relation.svg @@ -0,0 +1,10 @@ + + + \ No newline at end of file diff --git a/login/QR.md b/login/QR.md index f8f68b2..3a88d13 100644 --- a/login/QR.md +++ b/login/QR.md @@ -13,14 +13,14 @@ -## 获取二维码内容url以及秘钥 +## 申请二维码URL及扫码秘钥 -(秘钥超时为180秒) - -passport.bilibili.com/qrcode/getLoginUrl +http://passport.bilibili.com/qrcode/getLoginUrl *方式:GET* +秘钥超时为180秒 + **json回复:** | 字段 | 类型 | 内容 | 备注 | @@ -30,7 +30,8 @@ passport.bilibili.com/qrcode/getLoginUrl | ts | num | 请求时间 | 时间戳 | | data | obj | 信息本体 | | -data 对象: +`data`对象: + | 字段 | 类型 | 内容 | 备注 | | -------- | ----- | ------------- | ---------- | | url | str | 二维码内容url | 恒为87字符 | @@ -51,17 +52,21 @@ http://passport.bilibili.com/qrcode/getLoginUrl } ``` +用`url`中的值生成二维码,等待手机客户端扫描,并将`oauthKey`保存等待使用 + + + ## 验证二维码登录 -(秘钥超时为180秒) +*方式:POST* -passport.bilibili.com/qrcode/getLoginInfo +http://passport.bilibili.com/qrcode/getLoginInfo + +秘钥超时为180秒 验证正确时会进行设置以下cookie项: -「DedeUserID」 「DedeUserID__ckMd5」 「SESSDATA」 「bili_jct」 - -*方式:POST* +「sid」「DedeUserID」 「DedeUserID__ckMd5」 「SESSDATA」 「bili_jct」 参数: | 参数名 | 内容 | 必要性 | 备注 | @@ -84,9 +89,32 @@ data 对象: | ---- | ---- | --------------- | ---- | | url | str | 游戏分站登录url | | -示例:(重要token已河蟹处理) +示例: curl -d "oauthKey=xxx" "http://passport.bilibili.com/qrcode/getLoginInfo" + +当秘钥正确时但未扫描时`status`为false,`data`为num值-4 + +```json +{ + "status":false, + "data":-4, + "message":"Can't scan~" +} +``` + +扫描成功但手机端未确认时`status`为false,`data`为num值-4 + +```json +{ + "status":false, + "data":-5, + "message":"Can't confirm~" +} +``` + +扫描成功手机端确认登录后,`status`为true,`data`为对象,并向浏览器写入cookie + ```json { "code": 0, @@ -100,7 +128,7 @@ curl -d "oauthKey=xxx" "http://passport.bilibili.com/qrcode/getLoginInfo" 回复头部抓包信息: -可明显看见设置了几个cookie(本人手打cookie,已经成功登录B站)(重要token已河蟹处理) +可明显看见设置了几个cookie(本人手打已测试成功登录B站) ```http HTTP/1.1 200 OK @@ -119,7 +147,7 @@ Cache-Control: no-cache X-Cache-Webcdn: BYPASS from ks-sxhz-dx-w-01 ``` -**游戏分站登录url(也可用于不方便设置cookie的场合使用)** +**游戏分站登录url与cookie的数据对应(也可用于不方便设置cookie的场合提取使用)** https://passport.biligame.com/crossDomain? @@ -129,9 +157,9 @@ DedeUserID__ckMd5=(DedeUserID__ckMd5)& Expires=(过期时间 秒)& -SESSDATA=(SESSDATA)& +SESSDATA=(登录token)& -bili_jct=(bili_jct)& +bili_jct=(登录csrf)& gourl=(跳转网址 默认为主页) diff --git a/login/login_info.md b/login/login_info.md index dce9755..97aaf4c 100644 --- a/login/login_info.md +++ b/login/login_info.md @@ -2,14 +2,14 @@ ## 登录用户信息1(完整) -需要登录(SESSDATA) +http://api.bilibili.com/nav (使用转义) -api.bilibili.com/nav (使用转义) - -api.bilibili.com/x/web-interface/nav (原始数据) +http://api.bilibili.com/x/web-interface/nav (原始数据) *方式:GET* +需要登录(SESSDATA) + **json回复:** | 字段 | 类型 | 内容 | 备注 | @@ -19,7 +19,7 @@ api.bilibili.com/x/web-interface/nav (原始数据) | ttl | num | 1 | 作用尚不明确 | | data | obj | 信息本体 | | -data 对象: +`data`对象: | 字段 | 类型 | 内容 | 备注 | | --------------- | ---- | ---------------- | ------------------------- | @@ -47,7 +47,7 @@ data 对象: | allowance_count | num | 0 | 作用尚不明确 | | answer_status | num | 0 | 作用尚不明确 | -level_info 对象: +`data`中的`level_info`对象: | 字段 | 类型 | 内容 | 备注 | | ------------- | ---- | ------------------------ | ---- | @@ -56,7 +56,7 @@ level_info 对象: | current_exp | num | 当前经验 | | | next_exp | num | 升级下一等级需达到的经验 | | -official 对象: +`data`中的`official`对象: | 字段 | 类型 | 内容 | 备注 | | ----- | ---- | -------- | ----------------------------------------- | @@ -65,14 +65,14 @@ official 对象: | desc | str | 认证备注 | 无为空 | | type | num | 是否认证 | -1无
0认证 | -official_verify 对象: +`data`中的`official_verify`对象: | 字段 | 类型 | 内容 | 备注 | | ---- | ---- | -------- | --------------- | | type | num | 是否认证 | -1无
0认证 | | desc | str | 认证信息 | 无为空 | -pendant 对象: +`data`中的`pendant`对象: | 字段 | 类型 | 内容 | 备注 | | ------ | ---- | ----------- | ------------ | @@ -81,7 +81,7 @@ pendant 对象: | image | str | 挂件图片url | png | | expire | num | 0 | 作用尚不明确 | -wallet 对象: +`data`中的`wallet`对象: | 字段 | 类型 | 内容 | 备注 | | --------------- | ---- | ------------- | ------------ | @@ -154,14 +154,14 @@ http://api.bilibili.com/x/web-interface/nav ## 登录用户信息2(仅部分 带有转义) +http://account.bilibili.com/home/userInfo (带有转义) + +*方式:GET* + 需要登录(SESSDATA) 需要验证DedeUserID存在且不为0 -account.bilibili.com/home/userInfo (带有转义) - -*方式:GET* - **json回复:** | 字段 | 类型 | 内容 | 备注 | @@ -170,7 +170,7 @@ account.bilibili.com/home/userInfo (带有转义) | status | bool | true | 作用尚不明确 | | data | obj | 信息本体 | | -data 对象: +`data`对象: | 字段 | 类型 | 内容 | 备注 | | ----------------- | ---- | ----------------- | ------------------------- | @@ -187,7 +187,7 @@ data 对象: | official_verify | num | 是否认证 | -1无
0认证 | | pointBalance | num | 0 | 作用尚不明确 | -level_info 对象: +`data`中的`level_info`对象: | 字段 | 类型 | 内容 | 备注 | | ------------- | ---- | ------------------------ | ---- | @@ -230,12 +230,12 @@ http://account.bilibili.com/home/userInfo ## 登录用户状态数 -需要登录(SESSDATA) - -api.bilibili.com/x/web-interface/nav/stat +http://api.bilibili.com/x/web-interface/nav/stat *方式:GET* +需要登录(SESSDATA) + **json回复:** | 字段 | 类型 | 内容 | 备注 | @@ -268,3 +268,4 @@ http://api.bilibili.com/x/web-interface/nav/stat } ``` +粉丝数为365,关注数为695,发送的动态数为162 \ No newline at end of file diff --git a/user/info.md b/user/info.md index 5350db5..0d13314 100644 --- a/user/info.md +++ b/user/info.md @@ -3,7 +3,7 @@ ## 用户详细信息1 (用于空间) -api.bilibili.com/x/space/acc/info +http://api.bilibili.com/x/space/acc/info *方式:GET* @@ -21,7 +21,8 @@ api.bilibili.com/x/space/acc/info | ttl | num | 1 | 作用尚不明确 | | data | obj | 信息本体 | | -data 对象: +`data`对象: + | 字段 | 类型 | 内容 | 备注 | | ----------- | ---- | ---------------- | ------------------------------------------ | | mid | num | UID | | @@ -44,7 +45,8 @@ data 对象: | theme | obj | 空 | 作用尚不明确 | | sys_notice | obj | 空 | 作用尚不明确 | -official 对象: +`data`中的`official`对象: + | 字段 | 类型 | 内容 | 备注 | | ----- | ---- | -------- | ----------------------------------------- | | role | num | 认证类型 | 0无
1 2个人认证
3 4 5 6机构认证 | @@ -52,7 +54,8 @@ official 对象: | desc | str | 认证备注 | 无为空 | | type | num | 是否认证 | -1无
0认证 | -vip 对象: +`data`中的`vip`对象: + | 字段 | 类型 | 内容 | 备注 | | ---------- | ---- | ---------- | ----------------------------- | | type | num | 大会员类型 | 0无
1月会员
2年会员 | @@ -100,7 +103,7 @@ http://api.bilibili.com/x/space/acc/info?mid=2 } ``` -可得出用户的头像为: +用户的头像为: http://i1.hdslb.com/bfs/face/3e60b20604b6fdc7d081eb6a1ec72aa47c5a3964.jpg @@ -112,9 +115,11 @@ http://i2.hdslb.com/bfs/space/cb1c3ef50e22b6096fde67febe863494caefebad.png ![](http://i2.hdslb.com/bfs/space/cb1c3ef50e22b6096fde67febe863494caefebad.png) -## 用户详细信息2 (用于卡片) -api.bilibili.com/x/web-interface/card + +## 用户详细信息2 (用于名片) + +http://api.bilibili.com/x/web-interface/card *方式:GET* @@ -133,12 +138,14 @@ api.bilibili.com/x/web-interface/card | ttl | num | 1 | 作用尚不明确 | | data | obj | 信息本体 | | -data 对象: +`data`对象: + | 字段 | 类型 | 内容 | 备注 | | ---- | ----- | -------- | ---- | | card | obj | 卡片信息 | | -card 对象: +`data`中的`card`对象: + | 字段 | 类型 | 内容 | 备注 | | --------------- | ----- | -------------- | ------------------------------- | | mid | num | 用户UID | | @@ -169,7 +176,8 @@ card 对象: | article_count | num | 0 | 作用尚不明确 | | follower | num | 粉丝数 | | -level_info 对象: +`card`中的`level_info`对象: + | 字段 | 类型 | 内容 | 备注 | | ------------- | ----- | ---------- | ------------------ | | current_level | num | 当前等级 | 0-6级 | @@ -177,7 +185,8 @@ level_info 对象: | current_exp | num | 0 | 作用尚不明确 | | next_exp | num | 0 | 作用尚不明确 | -pendant 对象: +`card`中的`pendant`对象: + | 字段 | 类型 | 内容 | 备注 | | ------------- | ----- | ---------------- | ------------------ | | pid | num | 挂件id | | @@ -185,7 +194,8 @@ pendant 对象: | image | str | 挂件图片链接 | png | | expire | num | 0 | 作用尚不明确 | -nameplate 对象: +`card`中的`nameplate`对象: + | 字段 | 类型 | 内容 | 备注 | | ------------- | ----- | ----------------- | ------------------ | | nid | num | 勋章id | | @@ -195,7 +205,8 @@ nameplate 对象: | level | str | 勋章等级 | | | condition | str | 勋章条件 | | -Official 对象: +`card`中的`Official`对象: + | 字段 | 类型 | 内容 | 备注 | | ----- | ---- | -------- | ----------------------------------------- | | role | num | 认证类型 | 0无
1 2个人认证
3 4 5 6机构认证 | @@ -203,13 +214,15 @@ Official 对象: | desc | str | 认证备注 | 无为空 | | type | num | 是否认证 | -1无 0认证 | -official_verify 对象: +`card`中的`official_verify`对象: + | 字段 | 类型 | 内容 | 备注 | | ---- | ---- | -------- | --------------- | | type | num | 是否认证 | -1无
0认证 | | desc | str | 认证信息 | 无为空 | -vip 对象: +`card`中的`vip`对象: + | 字段 | 类型 | 内容 | 备注 | | ------------- | ---- | ---------- | ----------------------------- | | vipType | num | 大会员类型 | 0无
1月会员
2年会员 | @@ -219,7 +232,8 @@ vip 对象: | vipStatusWarn | str | 空 | 作用尚不明确 | | theme_type | num | 0 | 作用尚不明确 | -space 对象: +`card`中的`space`对象: + | 字段 | 类型 | 内容 | 备注 | | --------- | ----- | ----------------- | ---------------- | | s_img | str | 主页头图链接 小图 | png | @@ -304,13 +318,17 @@ http://api.bilibili.com/x/web-interface/card?mid=2&photo=true } ``` -## 自己详细信息 + + +## 本用户详细信息 + +http://api.bilibili.com/x/space/myinfo + +*方式:GET* 需要登录(SESSDATA) -api.bilibili.com/x/space/myinfo - -*方式:GET* +功能同「[登录用户信息1](../login/login_info.md#登录用户信息1(完整))」 **json回复:** | 字段 | 类型 | 内容 | 备注 | @@ -320,8 +338,8 @@ api.bilibili.com/x/space/myinfo | ttl | num | 1 | 作用尚不明确 | | data | obj | 信息本体 | | +`data`对象: -data 对象: | 字段 | 类型 | 内容 | 备注 | | --------------- | ---- | ------------ | -------------------- | | mid | num | UID | | @@ -347,7 +365,8 @@ data 对象: | following | num | 粉丝数 | | | follower | num | 粉丝数 | | -vip 对象: +`data`中的`vip`对象: + | 字段 | 类型 | 内容 | 备注 | | ------------ | ---- | -------------- | ----------------------------- | | type | num | 大会员类型 | 0无
1月会员
2年会员 | @@ -357,12 +376,14 @@ vip 对象: | theme_type | num | 0 | 作用尚不明确 | | label | obj | ??? | | -label 对象: +`vip`中的`label`对象: + | 字段 | 类型 | 内容 | 备注 | | ------------ | ----- | ------ | ------------ | | path | str | 空 | 作用尚不明确 | -pendant 对象: +`data`中的`pendant`对象: + | 字段 | 类型 | 内容 | 备注 | | ------ | ---- | ----------- | ------------ | | pid | num | 挂件id | | @@ -370,7 +391,8 @@ pendant 对象: | image | str | 挂件图片url | png | | expire | num | 0 | 作用尚不明确 | -nameplate 对象: +`data`中的`nameplate`对象: + | 字段 | 类型 | 内容 | 备注 | | ------------- | ----- | ----------------- | ------------------ | | nid | num | 勋章id | | @@ -380,7 +402,8 @@ nameplate 对象: | level | str | 勋章等级 | | | condition | str | 勋章条件 | | -Official 对象: +`data`中的`Official`对象: + | 字段 | 类型 | 内容 | 备注 | | ----- | ---- | -------- | ----------------------------------------- | | role | num | 认证类型 | 0无
1 2个人认证
3 4 5 6机构认证 | @@ -388,7 +411,8 @@ Official 对象: | desc | str | 认证备注 | 无为空 | | type | num | 是否认证 | -1无
0认证 | -level_exp 对象: +`data`中的`level_exp`对象: + | 字段 | 类型 | 内容 | 备注 | | ------------- | ----- | ---------- | ------------------ | | current_level | num | 当前等级 | 0-6级 | diff --git a/user/relation.md b/user/relation.md index 872f813..995ac93 100644 --- a/user/relation.md +++ b/user/relation.md @@ -2,12 +2,14 @@ ## 查询用户粉丝明细 -登录(SESSDATA)可看自己全部 + -api.bilibili.com/x/relation/followers +http://api.bilibili.com/x/relation/followers *方式:GET* +登录(SESSDATA)可看自己全部 + 参数: | 参数名 | 内容 | 必要性 | 备注 | @@ -25,7 +27,7 @@ api.bilibili.com/x/relation/followers | ttl | num | 1 | 作用尚不明确 | | data | obj | 信息本体 | | -data 对象: +`data`对象: | 字段 | 类型 | 内容 | 备注 | | ---------- | ----- | -------- | ------------ | @@ -33,7 +35,7 @@ data 对象: | re_version | num | ??? | 作用尚不明确 | | total | num | 粉丝总数 | | -list 数组: +`data`中的`list`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | ----- | ---------------- | @@ -41,7 +43,7 @@ list 数组: | n | obj | 粉丝n | 按照关注顺序排列 | | …… | obj | …… | …… | -数组 list 中的所有项 对象: +数组`list`中的对象: | 字段 | 类型 | 内容 | 备注 | | --------------- | ---- | ------------ | --------------------------------- | @@ -56,14 +58,14 @@ list 数组: | official_verify | obj | 认证信息 | | | vip | obj | 会员信息 | | -official_verify 对象: +数组`list`中的对象中的`official_verify`对象: | 字段 | 类型 | 内容 | 备注 | | ---- | ---- | ------------ | --------------- | | type | num | 用户认证类型 | -1无
1认证 | | desc | str | 用户认证信息 | 无为空 | -vip 对象: +数组`list`中的对象中的`vip`对象: | 字段 | 类型 | 内容 | 备注 | | ------------- | ---- | ------------ | ----------------------------- | @@ -76,7 +78,7 @@ vip 对象: | themeType | num | 0 | 作用尚不明确 | | label | obj | ??? | 作用尚不明确 | -label 对象: +`vip`中的`label`对象: | 字段 | 类型 | 内容 | 备注 | | ---- | ---- | ---- | ------------ | @@ -155,12 +157,14 @@ http://api.bilibili.com/x/relation/followers?vmid=293793435&ps=2&pn=1 ## 查询用户关注明细 -登录(SESSDATA)可看自己全部 + -api.bilibili.com/x/relation/followings +http://api.bilibili.com/x/relation/followings *方式:GET* +登录(SESSDATA)可看自己全部 + 参数: | 参数名 | 内容 | 必要性 | 备注 | @@ -186,7 +190,7 @@ data 对象: | re_version | num | ??? | 作用尚不明确 | | total | num | 关注总数 | | -list 数组: +`data`中的`list`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | ----- | ---------------- | @@ -194,7 +198,7 @@ list 数组: | n | obj | 粉丝n | 按照关注顺序排列 | | …… | obj | …… | …… | -数组 list 中的所有项 对象: +数组`list`中的对象: | 字段 | 类型 | 内容 | 备注 | | --------------- | ---------------------------------------- | ------------ | --------------------------------- | @@ -209,7 +213,7 @@ list 数组: | official_verify | obj | 认证信息 | | | vip | obj | 会员信息 | | -tag 数组: +数组`list`中的对象中的`tag`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | ----------------------- | ---- | @@ -217,14 +221,14 @@ tag 数组: | n | num | 位于分组(n+1)的分组ID | | | …… | num | …… | …… | -official_verify 对象: +数组`list`中的对象中的`official_verify`对象: | 字段 | 类型 | 内容 | 备注 | | ---- | ---- | ------------ | --------------- | | type | num | 用户认证类型 | -1无
0认证 | | desc | str | 用户认证信息 | 无为空 | -vip 对象: +数组`list`中的对象中的`vip`对象: | 字段 | 类型 | 内容 | 备注 | | ------------- | ---- | ------------ | ----------------------------- | @@ -237,7 +241,7 @@ vip 对象: | themeType | num | 0 | 作用尚不明确 | | label | obj | ??? | 作用尚不明确 | -label 对象: +`vip`中的`label`对象: | 字段 | 类型 | 内容 | 备注 | | ---- | ---- | ---- | ------------ | @@ -316,12 +320,14 @@ http://api.bilibili.com/x/relation/followings?vmid=293793435&ps=2&pn=1 ## 操作用户关系(关注/取关 等) -需要登录(SESSDATA) + -api.bilibili.com/x/relation/modify +http://api.bilibili.com/x/relation/modify *方式:POST* +需要登录(SESSDATA) + 参数: | 参数名 | 内容 | 必要性 | 备注 | @@ -369,12 +375,12 @@ curl -b SESSDATA=xxx -d "fid=14082&act=1&re_src=11&csrf=xxx" http://api.bilibili ## 查询用户与自己关系1 (仅查关注) - 需要登录(SESSDATA) - -api.bilibili.com/x/relation +http://api.bilibili.com/x/relation *方式:GET* + 需要登录(SESSDATA) + 参数: | 参数名 | 内容 | 必要性 | 备注 | @@ -390,7 +396,7 @@ api.bilibili.com/x/relation | ttl | num | 1 | 作用尚不明确 | | data | obj | 信息本体 | | -data 对象: +`data`对象: | 字段 | 类型 | 内容 | 备注 | | --------- | ---------------------------------------- | ------------ | --------------------------------- | @@ -400,7 +406,7 @@ data 对象: | tag | null默认分组
arrary存在至少一个分组 | 分组ID | | | special | num | 特别关注标志 | 0否
1是 | -tag 数组: +`tag`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | ----------------------- | ---- | @@ -433,12 +439,12 @@ http://api.bilibili.com/x/relation?fid=258150656 ## 查询用户与自己关系2(互相) -需要登录(SESSDATA) - -api.bilibili.com/x/space/acc/relation +http://api.bilibili.com/x/space/acc/relation *方式:GET* +需要登录(SESSDATA) + 参数: | 参数名 | 内容 | 必要性 | 备注 | @@ -454,14 +460,14 @@ api.bilibili.com/x/space/acc/relation | ttl | num | 1 | 作用尚不明确 | | data | obj | 信息本体 | | -data 对象: +`data`对象: | 字段 | 类型 | 内容 | 备注 | | ----------- | ---- | ------------------------ | ---- | | relation | obj | 目标用户对于本用户的属性 | | | be_relation | obj | 本用户对于目标用户的属性 | | -relation 对象: +`data`中的`relation`对象: | 字段 | 类型 | 内容 | 备注 | | --------- | ---------------------------------------- | ------------ | -------------- | @@ -471,7 +477,7 @@ relation 对象: | tag | null默认分组
arrary存在至少一个分组 | | | | special | num | | | -be_relation 对象: +`data`中的`be_relation`对象: | 字段 | 类型 | 内容 | 备注 | | --------- | ---------------------------------------- | ------------ | -------------- | @@ -481,7 +487,7 @@ be_relation 对象: | tag | null默认分组
arrary存在至少一个分组 | | | | special | num | | | -tag 数组(relation中与be_relation中): +`be_relation`与`relation`中的`tag`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | ----------------------- | ---- | @@ -527,12 +533,12 @@ http://api.bilibili.com/x/space/acc/relation?mid=15858903 ### 查询关注分组列表 -需要登录(SESSDATA) - -api.bilibili.com/x/relation/tags +http://api.bilibili.com/x/relation/tags *方式:GET* +需要登录(SESSDATA) + **json回复:** | 字段 | 类型 | 内容 | 备注 | @@ -542,7 +548,7 @@ api.bilibili.com/x/relation/tags | ttl | num | 1 | 作用尚不明确 | | data | arrary | 分组列表 | | -data 数组: +`data`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | ------------ | ---- | @@ -551,7 +557,7 @@ data 数组: | n | obj | 其他分组 | | | …… | num | …… | …… | -数组 data 中的所有项 对象: +数组`data`中的对象: | 字段 | 类型 | 内容 | 备注 | | ----- | ---- | ---------- | ---------------------------------- | @@ -592,12 +598,12 @@ http://api.bilibili.com/x/relation/tags ### 查询关注分组明细 -需要登录(SESSDATA) - -api.bilibili.com/x/relation/tag +http://api.bilibili.com/x/relation/tag *方式:GET* +需要登录(SESSDATA) + 参数: | 参数名 | 内容 | 必要性 | 备注 | @@ -615,7 +621,7 @@ api.bilibili.com/x/relation/tag | ttl | num | 1 | 作用尚不明确 | | data | arrary | 成员列表 | | -data 数组: +`data`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | --------- | ---------------- | @@ -623,7 +629,7 @@ data 数组: | n | obj | 成员信息n | 按照添加顺序排序 | | …… | num | …… | …… | -数组 data 中的所有项 对象: +数组`data`中的对象: | 字段 | 类型 | 内容 | 备注 | | --------------- | ---- | ----------- | ------- | @@ -634,14 +640,14 @@ data 数组: | official_verify | obj | 认证信息 | | | vip | obj | 会员信息 | | -official_verify 对象: +数组`data`中的对象中的`official_verify`对象: | 字段 | 类型 | 内容 | 备注 | | ---- | ---- | ------------ | --------------- | | type | num | 用户认证类型 | -1无
1认证 | | desc | str | 用户认证信息 | 无为空 | -vip 对象: +数组`data`中的对象中的`vip`对象: | 字段 | 类型 | 内容 | 备注 | | ------------- | ---- | ------------ | ----------------------------- | @@ -654,7 +660,7 @@ vip 对象: | themeType | num | 0 | 作用尚不明确 | | label | obj | ??? | 作用尚不明确 | -label 对象: +数组`data`中的对象中的`label`对象: | 字段 | 类型 | 内容 | 备注 | | ---- | ---- | ---- | ------------ | @@ -721,12 +727,12 @@ http://api.bilibili.com/x/relation/tag?tagid=207542&ps=2&pn=1 ### 查询目标用户所在的分组 -需要登录(SESSDATA) - -api.bilibili.com/x/relation/tag/user +http://api.bilibili.com/x/relation/tag/user *方式:GET* +需要登录(SESSDATA) + 参数: | 参数名 | 内容 | 必要性 | 备注 | @@ -742,7 +748,7 @@ api.bilibili.com/x/relation/tag/user | ttl | num | 1 | 作用尚不明确 | | data | obj | 信息本体 | | -data 对象: +`data`对象: | 字段 | 类型 | 内容 | 备注 | | ------------------- | ---- | --------- | ---- | @@ -772,12 +778,14 @@ http://api.bilibili.com/x/relation/tag/user?fid=319214221 ### 创建关注分组 -需要登录(SESSDATA) + -api.bilibili.com/x/relation/tag/create +http://api.bilibili.com/x/relation/tag/create *方式:POST* +需要登录(SESSDATA) + 参数: | 参数名 | 内容 | 必要性 | 备注 | @@ -794,7 +802,7 @@ api.bilibili.com/x/relation/tag/create | ttl | num | 1 | 作用尚不明确 | | data | obj | 信息本体 | | -data 对象: +`data`对象: | 字段 | 类型 | 内容 | 备注 | | ----- | ---- | -------------- | ---- | @@ -821,12 +829,12 @@ curl -b SESSDATA=xxx -d "tag=vUP&csrf=xxx" http://api.bilibili.com/x/relation/ta ### 重命名关注分组 -需要登录(SESSDATA) - -api.bilibili.com/x/relation/tag/update +http://api.bilibili.com/x/relation/tag/update *方式:POST* +需要登录(SESSDATA) + 参数: | 参数名 | 内容 | 必要性 | 备注 | @@ -861,12 +869,14 @@ curl -b SESSDATA=xxx -d "tagid=194112&name=%e8%86%9c%e6%b3%95%e5%b8%88&csrf=xxx" ### 删除关注分组 -需要登录(SESSDATA) + -api.bilibili.com/x/relation/tag/del +http://api.bilibili.com/x/relation/tag/del *方式:POST* +需要登录(SESSDATA) + 参数: | 参数名 | 内容 | 必要性 | 备注 | @@ -900,12 +910,14 @@ curl -b SESSDATA=xxx -d "tagid=216699&csrf=xxx" http://api.bilibili.com/x/relati ### 修改用户分组关系(添加/删除) -需要登录(SESSDATA) + -api.bilibili.com/x/relation/tags/addUsers +http://api.bilibili.com/x/relation/tags/addUsers *方式:POST* +需要登录(SESSDATA) + 参数: | 参数名 | 内容 | 必要性 | 备注 | diff --git a/user/status_number.md b/user/status_number.md index 9fa18ea..19b20fb 100644 --- a/user/status_number.md +++ b/user/status_number.md @@ -1,7 +1,7 @@ # 用户状态数 ## 关系状态数 -api.bilibili.com/x/relation/stat +http://api.bilibili.com/x/relation/stat *方式:GET* @@ -18,7 +18,8 @@ api.bilibili.com/x/relation/stat | ttl | num | 1 | 作用尚不明确 | | data | obj | 信息本体 | | -data 对象: +`data`对象: + | 字段 | 类型 | 内容 | 备注 | | --------- | ---- | ----------- | ------------------------------------------ | | mid | num | 目标用户UID | | @@ -46,7 +47,7 @@ http://api.bilibili.com/x/relation/stat?vmid=332704117 ``` ## UP主状态数 -api.bilibili.com/x/space/upstat +http://api.bilibili.com/x/space/upstat *方式:GET* @@ -64,19 +65,22 @@ api.bilibili.com/x/space/upstat | ttl | num | 1 | 作用尚不明确 | | data | obj | 信息本体 | | -data 对象: +`data`对象: + | 字段 | 类型 | 内容 | 备注 | | ------- | ----- | ---------- | ----- | | archive | obj | 视频播放量 | | | article | obj | 专栏阅读量 | | | likes | num | 获赞次数 | | -archive 对象: +`data`中的`archive`对象: + | 字段 | 类型 | 内容 | 备注 | | ---- | ----- | ---------- | ----- | | view | num | 视频播放量 | | -article 对象: +`data`中的`article`对象: + | 字段 | 类型 | 内容 | 备注 | | ---- | ----- | ---------- | ----- | | view | num | 专栏阅读量 | | @@ -102,7 +106,7 @@ http://api.bilibili.com/x/space/upstat?mid=456664753 ``` ## 订阅&投稿状态数 -api.bilibili.com/x/space/navnum +http://api.bilibili.com/x/space/navnum *方式:GET* @@ -111,8 +115,8 @@ api.bilibili.com/x/space/navnum | -------| ------- | ------ |------| | mid | 用户UID | 必要 | | - **json回复:** + | 字段 | 类型 | 内容 | 备注 | | ------- | ---- | -------- | ----------------------- | | code | num | 返回值 | 0成功
-400请求错误 | @@ -120,7 +124,8 @@ api.bilibili.com/x/space/navnum | ttl | num | 1 | 作用尚不明确 | | data | obj | 信息本体 | | -data 对象: +`data`对象: + | 字段 | 类型 | 内容 | 备注 | | --------- | ----- | ---------- | ------------ | | video | num | 投稿视频数 | | @@ -135,13 +140,15 @@ data 对象: | audio | num | 投稿音频数 | | | pugv | num | 投稿课程数 | | -channel 对象: +`data`中的`channel`对象: + | 字段 | 类型 | 内容 | 备注 | | ------- | ----- | ---------- | ------------ | | master | num | 频道数 | | | guest | num | 频道数 | | -favourite 对象: +`data`中的`favourite`对象: + | 字段 | 类型 | 内容 | 备注 | | ------ | ---- | ------------ | ---------------------------------- | | master | num | 全部收藏夹数 | 需要登录(SESSDATA) 只能查看自己的 | diff --git a/video/info.md b/video/info.md index f4dc1eb..1751a06 100644 --- a/video/info.md +++ b/video/info.md @@ -4,7 +4,7 @@ ## 视频详细信息 -api.bilibili.com/x/web-interface/view +http://api.bilibili.com/x/web-interface/view *方式:GET* @@ -23,7 +23,7 @@ api.bilibili.com/x/web-interface/view | ttl | num | 1 | 作用尚不明确 | | data | obj | 信息本体 | | -data 对象: +`data`对象: | 字段 | 类型 | 内容 | 备注 | | ------------ | ----- | ------------------------------ | --------------------- | @@ -54,7 +54,7 @@ data 对象: | subtitle | obj | 视频CC字幕 | | | staff | array | 合作成员列表 | 可不存在 | -rights 对象: +`data`中的`rights`对象: | 字段 | 类型 | 内容 | 备注 | | --------------- | ---- | ---------------- | ------------------------------------ | @@ -71,7 +71,7 @@ rights 对象: | ugc_pay_preview | num | 0 | 作用尚不明确 | | no_background | num | 0 | 作用尚不明确 | -owner 对象: +`data`中的`owner`对象: | 字段 | 类型 | 内容 | 备注 | | ---- | ---- | -------- | ------- | @@ -79,7 +79,7 @@ owner 对象: | name | str | UP主昵称 | | | face | str | UP主头像 | jpg gif | -stat 对象: +`data`中的`stat`对象: | 字段 | 类型 | 内容 | 备注 | | ---------- | ---- | ------------------------------ | ------------ | @@ -96,7 +96,7 @@ stat 对象: | dislike | num | 0 | 作用尚不明确 | | evaluation | str | 视频评分 | 默认为空 | -page 数组: +`data`中的`pages`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | ---------- | ------------- | @@ -104,7 +104,7 @@ page 数组: | n | obj | (n+1)P内容 | | | …… | obj | …… | …… | -数组 page 中的所有项 对象: +数组`pages`中的对象: | 字段 | 类型 | 内容 | 备注 | | --------- | ---- | --------------- | -------------------------------- | @@ -117,7 +117,7 @@ page 数组: | weblink | str | 空 | 作用尚不明确 | | dimension | obj | 当前分P分辨率 | | -dimension 对象:(同data中的dimension对象) +数组`pages`中的对象中的`dimension`对象:(同`data`中的`dimension`对象) | 字段 | 类型 | 内容 | 备注 | | ------ | ---- | ------------ | ------------ | @@ -125,14 +125,14 @@ dimension 对象:(同data中的dimension对象) | height | num | 当前分P 高度 | 可能为0 | | rotate | num | 0 | 作用尚不明确 | -subtitle 对象: +`subtitle`对象: | 字段 | 类型 | 内容 | 备注 | | ------------ | ----- | ---------------- | ---- | | allow_submit | bool | 是否允许提交字幕 | | | list | array | 字幕列表 | | -list 数组: +`subtitle`对象中的`list`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | --------- | ---- | @@ -140,7 +140,7 @@ list 数组: | n | obj | 字幕(n+1) | | | …… | obj | …… | …… | -数组 list 中的所有项 对象: +数组`list`中的对象: | 字段 | 类型 | 内容 | 备注 | | ------------ | ---- | -------------- | -------- | @@ -152,7 +152,7 @@ list 数组: | subtitle_url | str | 字幕文件url | json格式 | | author | obj | 字幕上传者信息 | | -author 对象: +数组`list`中的对象中的`author`对象: | 字段 | 类型 | 内容 | 备注 | | --------------- | ---- | ----------------- | ------------ | @@ -166,7 +166,7 @@ author 对象: | is_fake_account | num | 0 | 作用尚不明确 | | is_deleted | num | 0 | 作用尚不明确 | -staff 数组: +`staff`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | ------------- | ---- | @@ -174,7 +174,7 @@ staff 数组: | n | obj | 合作成员(n+1) | | | …… | obj | …… | …… | -数组 staff 中的所有项 对象: +数组`staff`中的对象: | 字段 | 类型 | 内容 | 备注 | | -------- | ---- | -------------- | ------- | @@ -186,7 +186,7 @@ staff 数组: | official | obj | 成员认证信息 | | | follower | num | 成员粉丝数 | | -vip 对象: +数组`staff`中的对象中的`vip`对象: | 字段 | 类型 | 内容 | 备注 | | ---------- | ---- | ------------ | ------------------- | @@ -194,7 +194,7 @@ vip 对象: | status | num | 会员状态 | 0无 1有 | | theme_type | num | 0 | | -official 对象: +数组`staff`中的对象中的`official`对象: | 字段 | 类型 | 内容 | 备注 | | ----- | ---- | ------------ | ----------------------------------------- | @@ -346,7 +346,7 @@ http://i0.hdslb.com/bfs/face/5387950a59be8038daaae3f66dfb5a85e20d5737.jpg ## 视频简介 -api.bilibili.com/x/web-interface/archive/desc +http://api.bilibili.com/x/web-interface/archive/desc *方式:GET* @@ -382,7 +382,7 @@ http://api.bilibili.com/x/web-interface/archive/desc?aid=39330059 ## 视频分P列表 (avID转CID) -api.bilibili.com/x/player/pagelist +http://api.bilibili.com/x/player/pagelist *方式:GET* @@ -401,7 +401,7 @@ api.bilibili.com/x/player/pagelist | ttl | num | 1 | 作用尚不明确 | | data | array | 分P列表 | | -数组 data: +数组`data`: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | ---------- | ------------- | @@ -409,7 +409,7 @@ api.bilibili.com/x/player/pagelist | n | obj | (n+1)P内容 | | | …… | obj | …… | …… | -数组 data 中的所有项 对象: +数组`data`中的对象: | 字段 | 类型 | 内容 | 备注 | | --------- | ---- | --------------- | -------------------------------- | @@ -422,7 +422,7 @@ api.bilibili.com/x/player/pagelist | weblink | str | 空 | 作用尚不明确 | | dimension | obj | 当前分P分辨率 | | -dimension 对象: +数组`data`中的对象中的`dimension`对象: | 字段 | 类型 | 内容 | 备注 | | ------ | ---- | ------------ | ------------ | diff --git a/video/like_coin_fav.md b/video/like_coin_fav.md index 7391a24..103da32 100644 --- a/video/like_coin_fav.md +++ b/video/like_coin_fav.md @@ -1,14 +1,14 @@ # 视频点赞&投币&收藏 +**本页所有操作均需登录(SESSDATA)** + ## 操作 ### 点赞视频 -需要登录(SESSDATA) - -api.bilibili.com/x/web-interface/archive/like +http://api.bilibili.com/x/web-interface/archive/like *方式:POST* @@ -48,9 +48,7 @@ curl -b "SESSDATA=xxx" -d "aid=79677524&like=1&csrf=xxx" "http://api.bilibili.co -需要登录(SESSDATA) - -api.bilibili.com/x/web-interface/coin/add +http://api.bilibili.com/x/web-interface/coin/add *方式:POST* @@ -80,7 +78,7 @@ data 对象: 示例: -curl -b "SESSDATA=xxx" -d "aid=90671873&select_like=1&multiply=2&csrf=xxx" "api.bilibili.com/x/web-interface/coin/add" +curl -b "SESSDATA=xxx" -d "aid=90671873&select_like=1&multiply=2&csrf=xxx" "http://api.bilibili.com/x/web-interface/coin/add" ```json { @@ -101,23 +99,21 @@ curl -b "SESSDATA=xxx" -d "aid=90671873&select_like=1&multiply=2&csrf=xxx" "api. -需要登录(SESSDATA) - -需要验证来源为 "http://www.bilibili.com" 或 "https://www.bilibili.com" 域名下 - -api.bilibili.com/medialist/gateway/coll/resource/deal +http://api.bilibili.com/medialist/gateway/coll/resource/deal *方式:POST* +需要验证referer为 `http://www.bilibili.com`或`https://www.bilibili.com`域名下 + 参数: -| 参数名 | 内容 | 必要性 | 备注 | -| ------------- | ------------------- | ------ | --------- | -| rid | 视频avID | 必要 | | -| type | 必须为2 | 必要 | | -| add_media_ids | 需要加入的收藏夹ID | 非必要 | 用","分隔 | -| del_media_ids | 需要删除的收藏夹ID | 非必要 | 用","分隔 | -| csrf | cookies中的bili_jct | 必要 | | +| 参数名 | 内容 | 必要性 | 备注 | +| ------------- | ------------------- | ------ | ----------------------- | +| rid | 视频avID | 必要 | | +| type | 必须为2 | 必要 | | +| add_media_ids | 需要加入的收藏夹ID | 非必要 | 同时添加多个,用`,`分隔 | +| del_media_ids | 需要取消的收藏夹ID | 非必要 | 同时取消多个,用`,`分隔 | +| csrf | cookies中的bili_jct | 必要 | | **json回复:** @@ -127,7 +123,7 @@ api.bilibili.com/medialist/gateway/coll/resource/deal | message | str | 错误信息 | 正确为success | | data | obj | 信息本体 | | -data 对象: +`data`对象: | 字段 | 类型 | 内容 | 备注 | | ------ | ---- | ----- | ------------ | @@ -155,12 +151,12 @@ curl --referer "http://www.bilibili.com" -b "SESSDATA=xxx" -d "rid=90671873&type -需要登录(SESSDATA) - -api.bilibili.com/x/web-interface/archive/like/triple +http://api.bilibili.com/x/web-interface/archive/like/triple *方式:POST* +同时点赞投币收藏视频,收藏于默认收藏夹中 + 参数: | 参数名 | 内容 | 必要性 | 备注 | @@ -177,7 +173,7 @@ api.bilibili.com/x/web-interface/archive/like/triple | ttl | num | 1 | 作用尚不明确 | | data | obj | 信息本体 | | -data 对象: +`data`对象: | 字段 | 类型 | 内容 | 备注 | | -------- | ---- | ------------ | ------- | @@ -210,13 +206,11 @@ curl -b "SESSDATA=xxx" -d "aid=91003840&csrf=xxx" "http://api.bilibili.com/x/web ## 判断状态 -### 视频被收藏 +### 视频是否被收藏 -需要登录(SESSDATA) - -api.bilibili.com/x/v2/fav/video/favoured +http://api.bilibili.com/x/v2/fav/video/favoured *方式:GET* @@ -262,13 +256,11 @@ http://api.bilibili.com/x/v2/fav/video/favoured?aid=46281123 -### 视频被点赞 +### 视频是否被点赞 -需要登录(SESSDATA) - -api.bilibili.com/x/web-interface/archive/has/like +http://api.bilibili.com/x/web-interface/archive/has/like *方式:GET* @@ -285,7 +277,7 @@ api.bilibili.com/x/web-interface/archive/has/like | code | num | 返回值 | 0成功
-400请求错误
-101账号未登录 | | message | str | 错误信息 | 默认为0 | | ttl | num | 1 | 作用尚不明确 | -| data | num | 是否被点赞 | 0未点赞
1已点赞 | +| data | num | 被点赞标志 | 0未点赞
1已点赞 | 示例: @@ -304,13 +296,11 @@ http://api.bilibili.com/x/web-interface/archive/has/like?aid=39330059 -### 视频被投币 +### 视频是否被投币 -需要登录(SESSDATA) - -api.bilibili.com/x/web-interface/archive/coins +http://api.bilibili.com/x/web-interface/archive/coins *方式:GET* @@ -329,7 +319,7 @@ api.bilibili.com/x/web-interface/archive/coins | ttl | num | 1 | 作用尚不明确 | | data | obj | 信息本体 | | -data 对象: +`data`对象: | 字段 | 类型 | 内容 | 备注 | | -------- | ---- | -------- | --------- | diff --git a/video/recommend.md b/video/recommend.md index d85604a..db2175a 100644 --- a/video/recommend.md +++ b/video/recommend.md @@ -2,12 +2,12 @@ ## 获取单视频推荐列表 -最多获取40条推荐视频 - -api.bilibili.com/x/web-interface/archive/related +http://api.bilibili.com/x/web-interface/archive/related *方式:GET* +最多获取40条推荐视频 + 参数: | 参数名 | 内容 | 必要性 | 备注 | @@ -23,7 +23,7 @@ api.bilibili.com/x/web-interface/archive/related | ttl | num | 1 | 作用尚不明确 | | data | arrary | 推荐列表 | | -data 数组: +`data`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | ------------- | ---- | @@ -32,7 +32,7 @@ data 数组: | …… | obj | …… | …… | | 39 | obj | 推荐视频40 | | -data 数组中的所有项 对象: +`data`数组中的对象: 同「[视频详细信息](info.md#视频详细信息)」中的data对象 diff --git a/video/snapshot.md b/video/snapshot.md index 7c91c79..3cb952f 100644 --- a/video/snapshot.md +++ b/video/snapshot.md @@ -1,22 +1,22 @@ # 视频快照 -快照的截取时间根据视频画面变化程度决定,每个视频各不相同 +快照的截取时间根据视频画面变化程度决定,各视频不相同 -截取时间表的时间根据视频画面变化程度决定,每个视频各不相同 +截取时间表的时间根据视频画面变化程度决定,各每个视频不相同 -截取时间表的时间和快照一一对应,并按照顺序排布 +截取时间表的时间和快照一一对应,并按照从左到右 从上到下的顺序排布 ## 获取视频快照1(用于进度条预览) -api.bilibili.com/x/player/videoshot +http://api.bilibili.com/x/player/videoshot *方式:GET* 参数: -| 参数名 | 内容 | 必要性 | 备注 | -| ------ | ------------------ | ------ | ------------------ | -| aid | 视频avID | 必要 | | -| cid | 分P CID | 非必要 | 无为1P | -| index | json数组截取时间表 | 非必要 | 1需要
0不需要 | +| 参数名 | 内容 | 必要性 | 备注 | +| ------ | ------------------ | ------ | ------------------------------- | +| aid | 视频avID | 必要 | | +| cid | 分P CID | 非必要 | 默认为1P | +| index | json数组截取时间表 | 非必要 | 1需要
0不需要
默认为0 | **json回复:** @@ -27,7 +27,7 @@ api.bilibili.com/x/player/videoshot | ttl | num | 1 | 作用尚不明确 | | data | obj | 信息本体 | | -data 对象: +`data`对象: | 字段 | 类型 | 内容 | 备注 | | ---------- | ----- | ---------------------- | --------- | @@ -39,7 +39,7 @@ data 对象: | image | array | 图片拼版 | | | index | array | json数组格式截取时间表 | 无为空 | -image 数组: +`data`中的`image`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | ----------------- | -------------------------- | @@ -47,7 +47,7 @@ image 数组: | n | str | 图片拼版(n+1) url | 第一张拼版占满时延续第二张 | | …… | str | …… | …… | -index 数组: +`data`中的`index`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | --------------- | --------------- | @@ -83,7 +83,8 @@ http://api.bilibili.com/x/player/videoshot?aid=26273789&index=1 ## 获取视频快照2 (用于封面预览) -api.bilibili.com/pvideo +http://api.bilibili.com/pvideo + *方式:GET* 内容与「获取视频快照1」加参数「index」=1相同,但url带有转义,仅限第1P @@ -94,14 +95,14 @@ api.bilibili.com/pvideo **json回复:** -| 字段 | 类型 | 内容 | 备注 | -| ------- | ---- | -------- | ------------------------------- | -| code | num | 返回值 | 0成功 40001请求错误 -404无视频 | -| message | str | 错误信息 | 默认为0 | -| ttl | num | 1 | 作用尚不明确 | -| data | obj | 信息本体 | | +| 字段 | 类型 | 内容 | 备注 | +| ------- | ---- | -------- | ---------------------------------------- | +| code | num | 返回值 | 0成功
40001请求错误
-404无视频 | +| message | str | 错误信息 | 默认为0 | +| ttl | num | 1 | 作用尚不明确 | +| data | obj | 信息本体 | | -data 对象: +`data`对象: | 字段 | 类型 | 内容 | 备注 | | ---------- | ----- | ---------------------- | --------- | @@ -113,7 +114,7 @@ data 对象: | image | array | 图片拼版 | | | index | array | json数组格式截取时间表 | 无为空 | -image 数组: +`data`中的`image`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | ----------------- | -------------------------- | @@ -121,7 +122,7 @@ image 数组: | n | str | 图片拼版(n+1) url | 第一张拼版占满时延续第二张 | | …… | str | …… | …… | -index 数组: +`data`中的`index`数组: | 项 | 类型 | 内容 | 备注 | | ---- | ---- | --------------- | --------------- | @@ -165,11 +166,13 @@ http://api.bilibili.com/pvideo?aid=26273789 ## bin格式截取时间表 -bin的内容为uint16数组,与json数组格式一一对应 +bin的内容为uint16数组(2Byte对齐),与json数组一一对应 0第项恒为0,从第1项开始作为截取图片的时间(秒) -示例bin格式截取时间表url:http://i0.hdslb.com/bfs/videoshot/49075258.bin +示例bin格式截取时间表:http://i0.hdslb.com/bfs/videoshot/49075258.bin + +hex内容如下: ``` 00000000 00 00 00 00 00 08 00 0e 00 13 00 19 00 22 00 28 |.............".(| diff --git a/video/status_number.md b/video/status_number.md index 1bbfbb8..bc0936e 100644 --- a/video/status_number.md +++ b/video/status_number.md @@ -1,7 +1,7 @@ # 视频状态数 -## 视频状态数1(备用 部分 不墙py) -api.bilibili.com/archive_stat/stat +## 视频状态数1(备用 不封python) +http://api.bilibili.com/archive_stat/stat *方式:GET* @@ -19,7 +19,8 @@ api.bilibili.com/archive_stat/stat | ttl | num | 1 | 作用尚不明确 | | data | obj | 信息本体 | | -data 对象: +`data`对象: + | 字段 | 类型 | 内容 | 备注 | | ---------- | ----------------- | --------------------------- | ---------------- | | aid | num | 视频avID | | @@ -62,23 +63,23 @@ http://api.bilibili.com/archive_stat/stat?aid=91572143 } ``` -## 视频状态数2(常用 全 墙py) -api.bilibili.com/x/web-interface/archive/stat - -**此API克制python,UA中只要存在\*python\*字眼就会被墙,如用py请改UA** - -**此API克制python,UA中只要存在\*python\*字眼就会被墙,如用py请改UA** - -**此API克制python,UA中只要存在\*python\*字眼就会被墙,如用py请改UA** +## 视频状态数2(常用 封杀python) +http://api.bilibili.com/x/web-interface/archive/stat *方式:GET* +**此API克python,UA中只要存在\*python\*字眼就无法获取正确内容,如用py请改UA** + +**此API克python,UA中只要存在\*python\*字眼就无法获取正确内容,如用py请改UA** + +**此API克python,UA中只要存在\*python\*字眼就无法获取正确内容,如用py请改UA** + 参数: | 参数名 | 内容 | 必要性 | 备注 | | -------| -------- | ------ |------| | aid | 视频avID | 必要 | | -**json回复** +**json回复:** | 字段 | 类型 | 内容 | 备注 | | ------- | ---- | -------- | ----------------------------------------- | @@ -87,7 +88,8 @@ api.bilibili.com/x/web-interface/archive/stat | ttl | num | 1 | 作用尚不明确 | | data | obj | 信息本体 | | -data 对象: +`data`对象: + | 字段 | 类型 | 内容 | 备注 | | ---------- | ---------------------- | -------------------------------- | ---------------- | | aid | num | 视频avID | |