🚀调整项目结构

This commit is contained in:
SocialSisterYi
2023-02-22 01:00:06 +08:00
parent b85e835ce7
commit 7d89ece2ac
201 changed files with 84964 additions and 0 deletions

137
docs/user/check_nickname.md Normal file
View File

@@ -0,0 +1,137 @@
# 检查昵称是否可注册
- [检查昵称](#检查昵称)
---
## 检查昵称
> https://passport.bilibili.com/web/generic/check/nickname
*请求方式:GET*
也可用于判断指定昵称的用户是否存在
**url参数**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
| -------- | ---- | ----------- | ------ | ---- |
| nickName | str | 目标昵称 | 必要 | 最长为16字符 |
**json回复**
根对象:
| 字段 | 类型 | 内容 | 备注 |
| ------- | ---- | -------- | --------------------------- |
| code | num | 状态码 | -400请求错误<br />-500服务器端异常<br />**详细说明见下一表格** |
| message | str | 错误详情 | 若昵称可用则不返回message |
`code`状态码:
| 值 | 含义 |
| ----- | --------------------------------- |
| 0 | 昵称未被注册 |
| 2001 | 该昵称已被他人使用 |
| 40002 | 昵称包含敏感信息 |
| 40004 | 昵称不可包含除\-和_以外的特殊字符 |
| 40005 | 昵称过长超过16字符 |
| 40006 | 昵称过短少于2字符 |
| 40014 | 昵称已存在 |
**示例:**
查询昵称 `xijinping` 是否被使用:
```shell
curl -G 'https://passport.bilibili.com/web/generic/check/nickname' \
--data-urlencode 'nickName=xijinping'
```
<details>
<summary>查看响应示例:</summary>
```json
{
"code":40002,
"message":"昵称包含敏感信息"
}
```
</details>
查询昵称 `//` 是否被使用:
```shell
curl -G 'https://passport.bilibili.com/web/generic/check/nickname' \
--data-urlencode 'nickName=//'
```
<details>
<summary>查看响应示例:</summary>
```json
{
"code": 40004,
"message": "昵称不可包含除-和_以外的特殊字符"
}
```
</details>
查询昵称 `test0000000000000 ` 是否被使用:
```shell
curl -G 'https://passport.bilibili.com/web/generic/check/nickname' \
--data-urlencode 'nickName=test0000000000000 '
```
<details>
<summary>查看响应示例:</summary>
```json
{
"code": 40005,
"message": "昵称过长"
}
```
</details>
查询昵称 `0` 是否被使用:
```shell
curl -G 'https://passport.bilibili.com/web/generic/check/nickname' \
--data-urlencode 'nickName=0'
```
<details>
<summary>查看响应示例:</summary>
```json
{
"code": 40006,
"message": "昵称过短"
}
```
</details>
查询昵称 `test` 是否被使用:
```shell
curl -G 'https://passport.bilibili.com/web/generic/check/nickname' \
--data-urlencode 'nickName=test'
```
<details>
<summary>查看响应示例:</summary>
```json
{
"code":40014,
"message":"昵称已存在"
}
```
</details>

131
docs/user/contract.md Normal file
View File

@@ -0,0 +1,131 @@
# 加入老粉计划
> https://api.bilibili.com/x/v1/contract/add_contract
*请求方式POST*
是否需要登录:`是`
认证方式Cookie(SESSDATA)
**正文参数 (application/x-www-form-urlencoded)**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
|----------|-----|--------|-----|-----|
| aid | str | `空串` | | |
| up_mid | str | UP主UID | 必要 | |
| source | str | `4` | | |
| scene | str | `105` | | |
| platform | str | `web` | | |
| mobi_app | str | `pc` | | |
| csrf | str | 用户csrf | 必要 | |
**json回复**
根对象:
| 字段名 | 类型 | 内容 | 备注 |
|---------|-----|------|-------------------------|
| code | num | 响应码 | 0成功<br/>158001`不满足条件` |
| message | str | 0 | |
| ttl | num | 1 | |
| data | obj | 信息本体 | |
`data`对象
| 字段名 | 类型 | 内容 | 备注 |
|---------------|------|-----------------------------------|-----|
| allow_message | bool | `true` | |
| input_text | str | `UP主加油看好你噢` | |
| input_title | str | `感谢你对UP主的特别支持“老粉”可期私信留言鼓励下TA吧 ` | |
**示例:**
```shell
curl --location --request POST 'https://api.bilibili.com/x/v1/contract/add_contract' \
--header 'Cookie: SESSDATA=xxx' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'up_mid=2' \
--data-urlencode 'csrf=xxx'
```
<details>
<summary>点击查看</summary>
```json
{
"code": 0,
"message": "0",
"ttl": 1,
"data": {
"allow_message": true,
"input_text": "UP主加油看好你噢",
"input_title": "感谢你对UP主的特别支持“老粉”可期私信留言鼓励下TA吧 "
}
}
```
</details>
# 老粉计划发送留言
> https://api.bilibili.com/x/v1/contract/add_message
*请求方式POST*
认证方式Cookie (SESSDATA)
**正文参数 (application/x-www-form-urlencoded)**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
|---------|-----|--------|-----|-----|
| aid | str | `空串` | | |
| up_mid | str | UP主UID | 必要 | |
| source | str | `4` | | |
| scene | str | `105` | | |
| content | str | 留言内容 | 必要 | |
| csrf | str | 用户csrf | 必要 | |
**json回复**
根对象:
| 字段名 | 类型 | 内容 | 备注 |
|---------|-----|------|------------------------------|
| code | num | 响应码 | 0成功<br/>158005您跟up主还不是契约关系 |
| message | str | 0 | |
| ttl | num | 1 | |
| data | obj | 信息本体 | |
`data`对象
| 字段名 | 类型 | 内容 | 备注 |
|---------------|-----|------------------|-----|
| success_toast | str | `提交成功UP主已收到留言~` | |
**示例:**
```shell
curl --location --request POST 'https://api.bilibili.com/x/v1/contract/add_message' \
--header 'Cookie: SESSDATA=xxx' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'up_mid=2' \
--data-urlencode 'content=..' \
--data-urlencode 'csrf=xxx'
```
<details>
<summary>点击查看</summary>
```json
{
"code": 0,
"message": "0",
"ttl": 1,
"data": {
"success_toast": "提交成功UP主已收到留言~"
}
}
```
</details>

1229
docs/user/info.md Normal file

File diff suppressed because it is too large Load Diff

102
docs/user/register.md Normal file
View File

@@ -0,0 +1,102 @@
# 用户注册
## 人机验证
[完成人机验证(参考验证登录)](../login/login_action/readme.md#验证登录)
完成后得到`key`, `challenge`, `validate`, `seccode`四个参数
## 发送短信验证码
[发送短信验证码(参考短信登录)](../login/login_action/SMS.md#发送短信验证码web端)
**注意不同的是这里type=1而非21**,推测此参数决定短信内容
```bash
curl 'https://passport.bilibili.com/web/sms/general/v2/send' \
--data-urlencode 'key=6eeb28e7bbd64b389da2be3a2778c7e3' \
--data-urlencode 'captchaType=6' \
--data-urlencode 'type=1' \
--data-urlencode 'cid=1' \
--data-urlencode 'tel=13888888888' \
--data-urlencode 'challenge=c52148f88a28b6011db52bb213483ee8' \
--data-urlencode 'validate=a98841cd6ea58e1b1f5783fca73cddb6' \
--data-urlencode 'seccode=a98841cd6ea58e1b1f5783fca73cddb6|jordan'
```
<details>
<summary>查看示例</summary>
```json
{
"code": 0,
"message": "验证码短信已下发"
}
```
</details>
## 提交注册请求
> https://passport.bilibili.com/web/reg/tel
*请求方式POST*
**正文参数( application/x-www-form-urlencoded **
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
| -------- | ---- | ---------------- | ------ | ------------------------------------------------------------ |
| cid | num | 国际冠字码 | 必要 | 可以从 [获取国际冠字码](../login/login_action/SMS.md#获取国际冠字码_web端) 接口中获取 |
| tel | num | 手机号码 | 必要 | |
| code | num | 短信验证码 | 必要 | |
| nickName | str | 昵称 | 必要 | |
| pwd | str | 密码 | 必要 | 密码为明文 |
| plat | num | 0 | 必要 | 平台? |
| gourl | str | 注册成功跳转地址 | 非必要 | 默认为主页`https://www.bilibili.com/` |
**json回复**
根对象:
| 字段 | 类型 | 内容 | 备注 |
| ------- | ---- | -------- | ----------------------------------------------- |
| code | num | 返回值 | 0成功<br>1005验证码错误<br>1007验证码过期 |
| message | str | 错误信息 | 成功时无此字段 |
| data | obj | 信息本体 | 只在成功时存在 |
`data`对象:
| 字段 | 类型 | 内容 | 备注 |
| ------------ | ---- | ---------- | ----------------------------- |
| redirectUrl | str | 跳转链接 | |
| hint | str | "注册成功" | 成功后不提示成功还能提示什么? |
| in_reg_audit | num | (?) | |
```bash
curl 'https://passport.bilibili.com/web/reg/tel' \
--data-urlencode 'plat=0' \
--data-urlencode 'cid=1' \
--data-urlencode 'tel=13888888888' \
--data-urlencode 'code=121314' \
--data-urlencode 'nickName=萌系小妹纸わ'
--data-urlencode 'pwd=Password1234' \
--data-urlencode 'gourl=https://www.bilibili.com'
```
<details>
<summary>查看示例</summary>
```json
{
"code": 0,
"data": {
"redirectUrl": "https://www.bilibili.com",
"hint": "注册成功",
"in_reg_audit": 0
}
}
```
</details>

2450
docs/user/relation.md Normal file

File diff suppressed because it is too large Load Diff

4832
docs/user/space.md Normal file

File diff suppressed because it is too large Load Diff

311
docs/user/status_number.md Normal file
View File

@@ -0,0 +1,311 @@
# 用户状态数
- [关系状态数](#关系状态数)
- [UP主状态数](#UP主状态数)
- [~~订阅&投稿状态数(已弃用)~~](#~~订阅&投稿状态数(已弃用)~~)
- [相簿投稿数](#相簿投稿数)
---
## 关系状态数
> https://api.bilibili.com/x/relation/stat
*请求方式GET*
认证方式CookieSESSDATA或APP
**url参数**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
| ---------- | ---- | ------------ | ----------- | ---- |
| access_key | str | APP登录Token | APP方式必要 | |
| vmid | num | 目标用户mid | 必要 | |
**json回复**
根对象:
| 字段 | 类型 | 内容 | 备注 |
| ------- | ---- | -------- | --------------------------- |
| code | num | 返回值 | 0成功<br />-400请求错误 |
| message | str | 错误信息 | 默认为0 |
| ttl | num | 1 | |
| data | obj | 信息本体 | |
`data`对象:
| 字段 | 类型 | 内容 | 备注 |
| --------- | ---- | ----------- | ----------------------------------------------- |
| mid | num | 目标用户mid | |
| following | num | 关注数 | |
| whisper | num | 悄悄关注数 | 需要登录(Cookie或APP) <br />未登录或非自己恒为0 |
| black | num | 黑名单数 | 需要登录(Cookie或APP) <br />未登录或非自己恒为0 |
| follower | num | 粉丝数 | |
**示例:**
查询用户`mid=332704117`的关系状态数
```shell
curl -G 'https://api.bilibili.com/x/relation/stat' \
--data-urlencode 'vmid=332704117' \
-b 'SESSDATA=xxx'
```
<details>
<summary>查看响应示例:</summary>
```json
{
"code": 0,
"message": "0",
"ttl": 1,
"data": {
"mid": 332704117,
"following": 32,
"whisper": 0,
"black": 0,
"follower": 919515
}
}
```
</details>
## UP主状态数
> https://api.bilibili.com/x/space/upstat
*请求方式GET*
认证方式CookieSESSDATA或APP
注:该接口需要**任意用户**登录,否则**不会返回任何数据**
**url参数**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
| ---------- | ---- | ------------ | ----------- | ---- |
| access_key | str | APP登录Token | APP方式必要 | |
| mid | num | 目标用户mid | 必要 | |
**json回复**
根对象:
| 字段 | 类型 | 内容 | 备注 |
| ------- | ---- | -------- | --------------------------- |
| code | num | 返回值 | 0成功<br />-400请求错误 |
| message | str | 错误信息 | 默认为0 |
| ttl | num | 1 | |
| data | obj | 信息本体 | |
`data`对象:
| 字段 | 类型 | 内容 | 备注 |
| ------- | ----- | ---------- | ----- |
| archive | obj | 视频播放量 | |
| article | obj | 专栏阅读量 | |
| likes | num | 获赞次数 | |
`data`中的`archive`对象:
| 字段 | 类型 | 内容 | 备注 |
| ---- | ----- | ---------- | ----- |
| view | num | 视频播放量 | |
`data`中的`article`对象:
| 字段 | 类型 | 内容 | 备注 |
| ---- | ----- | ---------- | ----- |
| view | num | 专栏阅读量 | |
**示例:**
查询用户`mid=456664753`的UP主状态数
```shell
curl -G 'https://api.bilibili.com/x/space/upstat' \
--data-urlencode 'mid=456664753' \
-b 'SESSDATA=xxx'
```
<details>
<summary>查看响应示例:</summary>
```json
{
"code": 0,
"message": "0",
"ttl": 1,
"data": {
"archive": {
"view": 213567370
},
"article": {
"view": 3230808
},
"likes": 20295095
}
}
```
</details>
## ~~订阅&投稿状态数(已弃用)~~
<details>
<summary>查看折叠内容</summary>
> https://api.bilibili.com/x/space/navnum
*请求方式GET*
**url参数**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
| ------ | ---- | ----------- | ------ | ---- |
| mid | num | 目标用户mid | 必要 | |
**json回复**
根对象:
| 字段 | 类型 | 内容 | 备注 |
| ------- | ---- | -------- | --------------------------- |
| code | num | 返回值 | 0成功<br />-400请求错误 |
| message | str | 错误信息 | 默认为0 |
| ttl | num | 1 | |
| data | obj | 信息本体 | |
`data`对象:
| 字段 | 类型 | 内容 | 备注 |
| --------- | ----- | ---------- | ------------ |
| video | num | 投稿视频数 | |
| bangumi | num | 追番数 | 无视隐私设置 |
| cinema | num | 追剧数 | 无视隐私设置 |
| channel | obj | 频道数 | |
| favourite | obj | 收藏夹数 | 无视隐私设置 |
| tag | num | 关注TAG数 | 无视隐私设置 |
| article | num | 投稿专栏数 | |
| playlist | num | 0 | 作用尚不明确 |
| album | num | 投稿相簿数 | |
| audio | num | 投稿音频数 | |
| pugv | num | 投稿课程数 | |
`data`中的`channel`对象:
| 字段 | 类型 | 内容 | 备注 |
| ------- | ----- | ---------- | ------------ |
| master | num | 频道数 | |
| guest | num | 频道数 | |
`data`中的`favourite`对象:
| 字段 | 类型 | 内容 | 备注 |
| ------ | ---- | ------------ | --------------------------------------- |
| master | num | 全部收藏夹数 | 需要登录(SESSDATA) <br />只能查看自己的 |
| guest | num | 公开收藏夹数 | 无视隐私设置 |
**示例:**
查询用户`mid=239202390`的订阅&投稿状态数
```shell
curl -G 'https://api.bilibili.com/x/space/navnum' \
--data-urlencode 'mid=239202390' \
-b 'SESSDATA=xxx'
```
<details>
<summary>查看响应示例:</summary>
```json
{
"code": 0,
"message": "0",
"ttl": 1,
"data": {
"video": 290,
"bangumi": 25,
"cinema": 13,
"channel": {
"master": 2,
"guest": 2
},
"favourite": {
"master": 6,
"guest": 6
},
"tag": 0,
"article": 1,
"playlist": 0,
"album": 150,
"audio": 4,
"pugv": 0
}
}
```
</details>
</details>
## 相簿投稿数
> https://api.vc.bilibili.com/link_draw/v1/doc/upload_count
*请求方式GET*
**url参数**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
| ------ | ---- | ----------- | ------ | ---- |
| uid | num | 目标用户mid | 必要 | |
**json回复**
根对象:
| 字段 | 类型 | 内容 | 备注 |
| ------- | ---- | -------- | ------------- |
| code | num | 返回值 | 0成功 |
| msg | str | 错误信息 | 默认为success |
| message | str | 错误信息 | 默认为success |
| data | obj | 信息本体 | |
`data`对象:
| 字段 | 类型 | 内容 | 备注 |
| ----------- | ---- | ---------------------- | ------------------ |
| all_count | num | 相簿总数 | 总数为以下三者之和 |
| draw_count | num | 发布绘画数 | |
| photo_count | num | 发布摄影数 | |
| daily_count | num | 发布日常(图片动态)数 | |
**示例:**
查询用户`mid=53456`的投稿相簿数
```shell
curl -G 'https://api.vc.bilibili.com/link_draw/v1/doc/upload_count' \
--data-urlencode 'uid=53456'
```
<details>
<summary>查看响应示例:</summary>
```json
{
"code":0,
"msg":"success",
"message":"success",
"data":{
"all_count":92,
"draw_count":5,
"photo_count":0,
"daily_count":87
}
}
```
</details>