From 0b801433112b23adf216e9ab0b6864b931baa7cd Mon Sep 17 00:00:00 2001 From: SocialSisterYi <45892418+SocialSisterYi@users.noreply.github.com> Date: Thu, 30 Jul 2020 23:29:40 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=90=9C=E7=B4=A2=E5=BB=BA?= =?UTF-8?q?=E8=AE=AE=20=E5=B9=B6=E5=8B=98=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 17 +-- article/like_coin_fav.md | 2 +- audio/musicstream_url.md | 2 +- comment/action.md | 4 +- creativecenter/railgun.md | 2 +- creativecenter/statistics&data.md | 2 +- danmaku/danmaku_proto.md | 2 +- danmaku/snapshot.md | 2 +- electric/WeChat&Alipay.md | 2 +- emote/action.md | 2 +- history&toview/history.md | 2 +- imgs/class.svg | 7 ++ imgs/collect.svg | 9 ++ imgs/up_face.jpg | Bin 0 -> 51444 bytes live/manage.md | 2 +- search/hot.md | 2 +- search/search_request.md | 8 +- search/suggest.md | 177 +++++++++++++++++++++++++++ user/space.md | 3 + video/recommend.md | 2 +- {other => web_widget}/zone_online.md | 0 21 files changed, 224 insertions(+), 25 deletions(-) create mode 100644 imgs/class.svg create mode 100644 imgs/collect.svg create mode 100644 imgs/up_face.jpg create mode 100644 search/suggest.md rename {other => web_widget}/zone_online.md (100%) diff --git a/README.md b/README.md index 447e60b..741cef6 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,4 @@ -

- -

+

哔哩哔哩-API收集整理

@@ -17,6 +15,7 @@

+

野生API文档

不断更新中....

本项目旨在对B站web端、移动端以及TV端散落在世界各地的野生api进行收集整理,研究使用方法并对其进行说明,运用了黑箱法、控制变量法、js逆向分析法、网络抓包法等研究办法 @@ -35,7 +34,7 @@ PS:所有http协议地址均可使用https,文档中为了统一写作`http` - [图片格式化](other/picture.md)√ - [登录](login) - [登录操作(人机认证)](login/login_action)√ - + [短信登录](llogin/login_action/SMS.md)√ + + [短信登录](login/login_action/SMS.md)√ + [密码登录](login/login_action/password.md)√ + [二维码登录](login/login_action/QR.md)√ + SNS登录(QQ&微博) @@ -97,11 +96,12 @@ PS:所有http协议地址均可使用https,文档中为了统一写作`http` - [搜索请求](search/search_request.md)√ - [搜索结果](search/search_response.md)√ - [默认搜索&热搜](search/hot.md)√ - - 搜索建议 + - [搜索建议](search/suggest.md)√ - [小黑屋](blackroom) - 基本信息 - [封禁公示](blackroom/banlist.md)√ - 仲裁信息 + - 仲裁操作 - [评论区](comment) - [评论区明细](comment/comment_list.md)√ - [操作](comment/action.md)√ @@ -153,7 +153,8 @@ PS:所有http协议地址均可使用https,文档中为了统一写作`http` - [其他](other) - [基于ip的地理位置查询](other/ip.md)√ - [获取当前时间戳](other/time_stamp.md)√ - - [分区在线人数](other/zone_online.md)√ +- [web端首页组件](web_widget) + - [分区在线人数](web_widget/zone_online.md)√ B站专栏同步推出[《B站api研究记》](https://www.bilibili.com/read/readlist/rl207146)系列(更新状态:咕咕......),~~欢迎关注~~ @@ -165,7 +166,7 @@ B站专栏同步推出[《B站api研究记》](https://www.bilibili.com/read/rea (重要的话说三遍,本人不承担任何责任) - +/> **--by [社会易姐QwQ](https://space.bilibili.com/293793435)** @@ -175,6 +176,8 @@ B站专栏同步推出[《B站api研究记》](https://www.bilibili.com/read/rea 不了解json的请移步,[传送门](https://www.sojson.com/json/json_index.html) +不了解protobuf的请移步,[传送门](https://www.jianshu.com/p/a24c88c0526a ) + # 相关项目: 库及文档: diff --git a/article/like_coin_fav.md b/article/like_coin_fav.md index 001faf9..224430b 100644 --- a/article/like_coin_fav.md +++ b/article/like_coin_fav.md @@ -1,6 +1,6 @@ # 专栏投币&点赞&收藏 -**本页所有操作均需登录(SESSDATA)** +**本页所有操作均需登录(Cookie)** ## 点赞文章 diff --git a/audio/musicstream_url.md b/audio/musicstream_url.md index 62ddce1..b39ed37 100644 --- a/audio/musicstream_url.md +++ b/audio/musicstream_url.md @@ -11,7 +11,7 @@ | 2 | 高品质 320K | | 3 | 无损 FLAC (大会员) | -## 获取音频流URL(web端) +## 获取音频流URL(无法获取付费音频)(web端) > http://www.bilibili.com/audio/music-service-c/web/url diff --git a/comment/action.md b/comment/action.md index e5fa95b..a573adc 100644 --- a/comment/action.md +++ b/comment/action.md @@ -1,8 +1,8 @@ # 评论区操作 -**本页所有操作均需登录(SESSDATA)** +**本页所有操作均需登录(Cookie)** -使用该登录token进行评论用户识别与操作鉴权 +使用该登录token识别用户身份 ## 发表评论 diff --git a/creativecenter/railgun.md b/creativecenter/railgun.md index a939b87..f4c956d 100644 --- a/creativecenter/railgun.md +++ b/creativecenter/railgun.md @@ -1,6 +1,6 @@ # 电磁力相关 -**本页所有操作均需登录(SESSDATA)** +**本页所有操作均需登录(Cookie或APP)** 电磁力每周日下午刷新 diff --git a/creativecenter/statistics&data.md b/creativecenter/statistics&data.md index de4ba6b..ac0dcc4 100644 --- a/creativecenter/statistics&data.md +++ b/creativecenter/statistics&data.md @@ -1,6 +1,6 @@ # 统计与数据 -本页所有操作均需登录(SESSDATA) +本页所有操作均需登录(Cookie) 统计与数据次日中午12刷新 diff --git a/danmaku/danmaku_proto.md b/danmaku/danmaku_proto.md index 248f4d6..50ae6f0 100644 --- a/danmaku/danmaku_proto.md +++ b/danmaku/danmaku_proto.md @@ -16,7 +16,7 @@ 只能返回普通和高级弹幕,代码(BAS)弹幕请从云推荐弹幕中获取 -**注:仅获取6min的整数倍时间内的弹幕(如第一包中弹幕`progress`值域为0-360000)** +**注:仅获取6min的整数倍时间内的弹幕,6min内最多弹幕数为6000条(如第一包中弹幕`progress`值域为0-360000)** **url参数:** diff --git a/danmaku/snapshot.md b/danmaku/snapshot.md index b03a9b6..c40c03d 100644 --- a/danmaku/snapshot.md +++ b/danmaku/snapshot.md @@ -1,4 +1,4 @@ -# +# 弹幕快照 # 获取弹幕快照 diff --git a/electric/WeChat&Alipay.md b/electric/WeChat&Alipay.md index ac08c9e..029e584 100644 --- a/electric/WeChat&Alipay.md +++ b/electric/WeChat&Alipay.md @@ -1,6 +1,6 @@ # 微信&支付宝方式充电 -**本页所有操作均需登录(SESSDATA)** +**本页所有操作均需登录(Cookie)** diff --git a/emote/action.md b/emote/action.md index 28e8e06..f1c7cf1 100644 --- a/emote/action.md +++ b/emote/action.md @@ -1,6 +1,6 @@ # 表情操作 -**本页所有操作均需登录(SESSDATA)** +**本页所有操作均需登录(Cookie)** ## 添加表情包 diff --git a/history&toview/history.md b/history&toview/history.md index 3ccb0f8..97510d2 100644 --- a/history&toview/history.md +++ b/history&toview/history.md @@ -2,7 +2,7 @@ -**本页所有操作均需登录(SESSDATA)** +**本页所有操作均需登录(Cookie)** ## 获取历史记录列表(视频、直播、专栏) diff --git a/imgs/class.svg b/imgs/class.svg new file mode 100644 index 0000000..51797d1 --- /dev/null +++ b/imgs/class.svg @@ -0,0 +1,7 @@ + + + \ No newline at end of file diff --git a/imgs/collect.svg b/imgs/collect.svg new file mode 100644 index 0000000..b382480 --- /dev/null +++ b/imgs/collect.svg @@ -0,0 +1,9 @@ + + + \ No newline at end of file diff --git a/imgs/up_face.jpg b/imgs/up_face.jpg new file mode 100644 index 0000000000000000000000000000000000000000..26b579c30d31dd52c5529225be3d199c81b8d95e GIT binary patch literal 51444 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 Ue;+?OY=jjXL=MC5AJbp|+3&~1%>V!Z literal 0 HcmV?d00001 diff --git a/live/manage.md b/live/manage.md index 1ee83f3..554a9bc 100644 --- a/live/manage.md +++ b/live/manage.md @@ -1,6 +1,6 @@ # 直播间管理 -**本页所有操作均需登录(SESSDATA)** +**本页所有操作均需登录(Cookie)** ## 更新直播间标题 diff --git a/search/hot.md b/search/hot.md index 13f9ee6..b901019 100644 --- a/search/hot.md +++ b/search/hot.md @@ -72,7 +72,7 @@ curl 'http://api.bilibili.com/x/web-interface/search/default' | --------- | ----- | ------------ | ------------- | | exp_str | str | ??? | | | code | num | 返回值 | 0:成功 | -| cost | obj | 响应时间? | | +| cost | obj | 详细搜索用时 | 大概是吧? | | seid | str | 搜索seID | | | timestamp | num | 榜单统计时间 | 时间戳 | | message | str | 错误信息 | 默认为success | diff --git a/search/search_request.md b/search/search_request.md index 3b85bef..cf7cfc4 100644 --- a/search/search_request.md +++ b/search/search_request.md @@ -14,9 +14,9 @@ **url参数:** -| 参数名 | 类型 | 内容 | 备注 | -| ------- | ---- | ---------------- | ---- | -| keyword | str | 需要搜索的关键词 | | +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| ------- | ---- | ---------------- | ------ | ---- | +| keyword | str | 需要搜索的关键词 | 必要 | | **json回复:** @@ -40,7 +40,7 @@ | numPages | num | 分页数 | 最大值为50 | | suggest_keyword | str | 空 | **作用尚不明确** | | rqt_type | str | search | **作用尚不明确** | -| cost_time | obj | 详细搜索用时 | 大概 | +| cost_time | obj | 详细搜索用时 | 大概是吧? | | exp_list | obj | ??? | **作用尚不明确** | | egg_hit | num | 0 | **作用尚不明确** | | pageinfo | obj | 分类页数信息 | | diff --git a/search/suggest.md b/search/suggest.md new file mode 100644 index 0000000..cb3a6aa --- /dev/null +++ b/search/suggest.md @@ -0,0 +1,177 @@ +# 搜索建议 + +## 获取搜索建议关键词(web端) + +> http://s.search.bilibili.com/main/suggest + +*请求方式:GET* + +搜索建议最多提供10个候选关键词 + +搜索建议内容可为任意语言(中 英 日等....),中文拼音支持全拼联想词 + +**url参数:** + +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +| --------- | ---- | ---------------------- | ------ | ------------------------ | +| term | str | 需要获得建议的输入内容 | 必要 | | +| main_ver | str | v1 | 非必要 | 固定为`v1` | +| highlight | str | 任意 | 非必要 | 有此项开启关键词高亮标签 | + +**json回复:** + +根对象: + +| 字段 | 类型 | 内容 | 备注 | +| ----------- | ---- | ------------ | ------------ | +| code | num | 返回值 | 0:成功 | +| cost | obj | 详细搜索用时 | 大概是吧? | +| result | obj | 搜索建议结果 | | +| page caches | obj | ??? | 作用尚不明确 | +| sengine | obj | ??? | 作用尚不明确 | +| stoken | str | ??? | 作用尚不明确 | + +`cost`对象: + +| 字段 | 类型 | 内容 | 备注 | +| ----- | ---- | -------- | ---- | +| about | obj | 套了个娃 | | + +`cost`中的`about`对象: + +| 字段 | 类型 | 内容 | 备注 | +| ------------ | ---- | ---- | ---- | +| params_check | str | | | +| total | str | | | +| main_handler | str | | | + +`result`对象: + +| 字段 | 类型 | 内容 | 备注 | +| ---- | ----- | -------- | ---- | +| tag | array | 套了个娃 | | + +`result`中的`tag`数组: + +| 项 | 类型 | 内容 | 备注 | +| ---- | ---- | ------------------- | ---------------------- | +| 0 | obj | 第1建议关键词 | | +| n | obj | 第(n+1)建议关键词 | 按照相关程度与热度顺序 | +| 9 | obj | 第10建议关键词 | 最后一项 | + +`tag`数组中的对象: + +| 字段 | 类型 | 内容 | 备注 | +| ----- | ---- | ---------- | ------------------------------------------------------------ | +| value | str | 关键词内容 | | +| ref | num | 0 | 作用尚不明确 | +| name | str | 显示内容 | 在无高亮显示时与`value`相同
有高亮显示时带有``的xml标签 | +| spid | num | ??? | 作用尚不明确 | + +`page caches`对象: + +| 字段 | 类型 | 内容 | 备注 | +| ---------- | ---- | ---- | ------------ | +| save cache | str | no | 作用尚不明确 | + +`sengine`对象: + +| 字段 | 类型 | 内容 | 备注 | +| ----- | ---- | ---- | ------------ | +| usage | num | 0 | 作用尚不明确 | + +**示例:** + +获取关于`lei`的搜索建议,关键词带有高亮 + +```shell +curl -G 'http://s.search.bilibili.com/main/suggest'\ +--data-urlencode 'term=lei'\ +--data-urlencode 'main_ver=v1'\ +--data-urlencode 'highlight=' +``` + +```json +{ + "code": 0, + "cost": { + "about": { + "params_check": "0.000103", + "total": "0.011644", + "main_handler": "0.011472" + } + }, + "result": { + "tag": [ + { + "value": "雷军", + "ref": 0, + "name": "雷军", + "spid": 1 + }, + { + "value": "雷之律者", + "ref": 0, + "name": "雷之律者", + "spid": 5 + }, + { + "value": "LEI神", + "ref": 0, + "name": "LEI神", + "spid": 5 + }, + { + "value": "LEIGH ELLEXSON", + "ref": 0, + "name": "LEIGH ELLEXSON", + "spid": 5 + }, + { + "value": "LEICA Q2", + "ref": 0, + "name": "LEICA Q2", + "spid": 5 + }, + { + "value": "LEIGHANNE", + "ref": 0, + "name": "LEIGHANNE", + "spid": 0 + }, + { + "value": "雷达探测姬", + "ref": 0, + "name": "雷达探测姬", + "spid": 5 + }, + { + "value": "雷律", + "ref": 0, + "name": "雷律", + "spid": 5 + }, + { + "value": "雷霆嘎巴", + "ref": 0, + "name": "雷霆嘎巴", + "spid": 5 + }, + { + "value": "雷霆沙赞", + "ref": 0, + "name": "雷霆沙赞", + "spid": 5 + } + ] + }, + "page caches": { + "save cache": "no" + }, + "sengine": { + "usage": 0 + }, + "stoken": "12344377692164099019" +} +``` + diff --git a/user/space.md b/user/space.md index 334265f..8cb2f0d 100644 --- a/user/space.md +++ b/user/space.md @@ -2178,6 +2178,8 @@ curl -G 'http://api.bilibili.com/x/space/channel/video/check ## 收藏 + + ### 查询用户创建的视频收藏夹 > http://api.bilibili.com/x/v3/fav/folder/created/list-all @@ -2896,3 +2898,4 @@ curl -G 'http://space.bilibili.com/ajax/tags/getSubList'\ } } ``` + diff --git a/video/recommend.md b/video/recommend.md index 644fc90..624b0fd 100644 --- a/video/recommend.md +++ b/video/recommend.md @@ -1,6 +1,6 @@ # 视频推荐 -## 获取单视频推荐列表 +## 获取单视频推荐列表(web端) > http://api.bilibili.com/x/web-interface/archive/related diff --git a/other/zone_online.md b/web_widget/zone_online.md similarity index 100% rename from other/zone_online.md rename to web_widget/zone_online.md