🚀调整项目结构

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

154
docs/audio/action.md Normal file
View File

@@ -0,0 +1,154 @@
# 音频投币&收藏
- [查询音频收藏状态](#查询音频收藏状态)
- [查询音频投币数](#查询音频投币数)
- [投币音频](#投币音频)
---
## 查询音频收藏状态
> https://www.bilibili.com/audio/music-service-c/web/collections/songs-coll
*请求方式GET*
认证方式CookieSESSDATA
鉴权方式Cookie中`DedeUserID`存在且不为0
**url参数**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
| ------ | ---- | -------- | ------ | ---- |
| sid | num | 音频auid | 必要 | |
**json回复**
根对象:
| 字段 | 类型 | 内容 | 备注 |
| ---- | ---- | -------- | ------------------------------------------------------------ |
| code | num | 返回值 | 0成功<br />72000000参数错误<br />72010002账号未登陆<br />7201006该音频不存在或已被下架 |
| msg | str | 错误信息 | 默认为success |
| data | bool | 是否收藏 | false未收藏<br />true已收藏 |
**示例:**
查询音频`au13598`的收藏状态
```shell
curl -G 'https://www.bilibili.com/audio/music-service-c/web/collections/songs-coll' \
--data-urlencode 'sid=13598' \
-b 'SESSDATA=xxx;DedeUserID=1;'
```
<details>
<summary>查看响应示例:</summary>
```json
{
"code": 0,
"msg": "success",
"data": true
}
```
</details>
## 查询音频投币数
> https://www.bilibili.com/audio/music-service-c/web/coin/audio
*请求方式GET*
认证方式CookieSESSDATA
鉴权方式Cookie中`DedeUserID`存在且不为0
**url参数**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
| ------ | ---- | -------- | ------ | ---- |
| sid | num | 音频auid | 必要 | |
**json回复**
根对象:
| 字段 | 类型 | 内容 | 备注 |
| ---- | ---- | -------- | ------------------------------------------------------------ |
| code | num | 返回值 | 0成功<br />72000000参数错误<br />72010002账号未登陆<br />7201006该音频不存在或已被下架 |
| msg | str | 错误信息 | 默认为success |
| data | num | 投币数量 | 0为未投币上限为2 |
**示例:**
查询音频`au13598`的投币数
```shell
curl -G 'https://www.bilibili.com/audio/music-service-c/web/coin/audio' \
--data-urlencode 'sid=15664' \
-b 'SESSDATA=xxx;DedeUserID=1;'
```
<details>
<summary>查看响应示例:</summary>
```json
{
"code": 0,
"msg": "success",
"data": 1
}
```
</details>
## 投币音频
> https://www.bilibili.com/audio/music-service-c/web/coin/add
*请求方式POST*
认证方式CookieSESSDATA
**url参数**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
| -------- | ---- | ------------------------- | ------ | ---- |
| sid | num | 音频 auid | 必要 | |
| multiply | num | 投币数量(最大为 2 | 必要 | |
| csrf | str | CSRF Token位于 cookie | 必要 | |
**json回复**
根对象:
| 字段 | 类型 | 内容 | 备注 |
| ---- | ---- | --------- | ------------------------------------------------------------ |
| code | num | 返回值 | 0成功<br />72000000参数错误<br />72010002账号未登陆<br />7201006该音频不存在或已被下架 |
| msg | str | 错误信息 | 默认为 0 |
| data | str | 当前投币数量 | 0 为未投币,上限为 2 |
**示例:**
为音频`au13598`投币
```shell
curl -G 'https://www.bilibili.com/audio/music-service-c/web/coin/add' \
--data-urlencode 'sid=15664' \
-b 'SESSDATA=xxx;DedeUserID=1;'
```
<details>
<summary>查看响应示例:</summary>
```json
{
"code": 0,
"msg": "0",
"data": "1"
}
```
</details>

432
docs/audio/info.md Normal file
View File

@@ -0,0 +1,432 @@
# 歌曲基本信息
- [查询歌曲基本信息](#查询歌曲基本信息)
- [查询歌曲TAG](#查询歌曲TAG)
- [查询歌曲创作成员列表](#查询歌曲创作成员列表)
- [获取歌曲歌词](#获取歌曲歌词)
---
## 查询歌曲基本信息
> https://www.bilibili.com/audio/music-service-c/web/song/info
*请求方式GET*
认证方式CookieSESSDATA
**url参数**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
| ------ | ---- | -------- | ------ | ---- |
| sid | num | 音频auid | 必要 | |
**json回复**
根对象:
| 字段 | 类型 | 内容 | 备注 |
| ---- | ----------------------------- | -------- | ------------------------------------------------------------ |
| code | num | 返回值 | 0成功<br />72000000参数错误<br />7201006该音频不存在或已被下架<br />72010027版权音乐重定向 |
| msg | str | 错误信息 | 默认为success |
| data | 正确时obj<br />错误时null | 信息本体 | |
`data`对象:
| 字段 | 类型 | 内容 | 备注 |
| ---------- | ------ | ------------------ | ------------------ |
| id | num | 音频auid | |
| uid | num | UP主mid | |
| uname | str | UP主昵称 | |
| author | str | 作者名 | |
| title | str | 歌曲标题 | |
| cover | str | 封面图片url | |
| intro | str | 歌曲简介 | |
| lyric | str | lrc歌词url | |
| crtype | num | 1 | **作用尚不明确** |
| duration | num | 歌曲时间长度 | 单位为秒 |
| passtime | num | 歌曲发布时间 | 时间戳 |
| curtime | num | 当前请求时间 | 时间戳 |
| aid | num | 关联稿件avid | 无为0 |
| bvid | str | 关联稿件bvid | 无为空 |
| cid | num | 关联视频cid | 无为0 |
| msid | num | 0 | **作用尚不明确** |
| attr | num | 0 | **作用尚不明确** |
| limit | num | 0 | **作用尚不明确** |
| activityId | num | 0 | **作用尚不明确** |
| limitdesc | str | 空 | **作用尚不明确** |
| ctime | null | - | **作用尚不明确** |
| statistic | obj | 状态数 | |
| vipInfo | obj | UP主会员状态 | |
| collectIds | array | 歌曲所在的收藏夹mlid | 需要登录(SESSDATA) |
| coin_num | num | 投币数 | |
`data`中的`statistic`对象:
| 字段 | 类型 | 内容 | 备注 |
| ------- | ---- | -------- | ---- |
| sid | num | 音频auid | |
| play | num | 播放次数 | |
| collect | num | 收藏数 | |
| comment | num | 评论数 | |
| share | num | 分享数 | |
`data`中的`vipInfo`对象:
| 字段 | 类型 | 内容 | 备注 |
| ------------ | ---- | ------------ | ----------------------------------- |
| type | num | 会员类型 | 0无<br />1月会员<br />2年会员 |
| status | num | 会员状态 | 0无<br />1有 |
| due_date | num | 会员到期时间 | 时间戳 毫秒 |
| vip_pay_type | num | 会员开通状态 | 0无<br />1有 |
`data`中的`collectIds`数组:
| 项 | 类型 | 内容 | 备注 |
| ---- | ---- | ------------------------- | ---- |
| 0 | num | 第1个所在的收藏夹mlid | |
| n | num | 第n+1个所在的收藏夹mlid | |
| …… | num | …… | …… |
**示例:**
查询音频`au13598`的基本信息
```shell
curl -G 'https://www.bilibili.com/audio/music-service-c/web/song/info' \
--data-urlencode 'sid=13598' \
-b 'SESSDATA=xxx'
```
<details>
<summary>查看响应示例:</summary>
```json
{
"code": 0,
"msg": "success",
"data": {
"id": 13598,
"uid": 486183,
"uname": "排骨教主",
"author": "排骨教主",
"title": "牵丝戏",
"cover": "http://i0.hdslb.com/bfs/music/cf50d93b4dc08bfc6d3112041d6de0e56045ac5b.jpg",
"intro": "自制 这次要特别感谢山东省京剧院的各位年轻的老师们对我戏腔发声的悉心指导\n关注排骨的微博@排骨节操收割机\n排骨QQ群456237456\n感谢@妄北没睡够(新浪微博) 画的视频图,太美了!!!!!\n",
"lyric": "http://i0.hdslb.com/bfs/music/150587810313598.lrc",
"crtype": 1,
"duration": 239,
"passtime": 1501640683,
"curtime": 1590154258,
"aid": 2554020,
"bvid": "BV1us411S7E6",
"cid": 3990196,
"msid": 0,
"attr": 0,
"limit": 0,
"activityId": 0,
"limitdesc": "",
"ctime": null,
"statistic": {
"sid": 13598,
"play": 1028516,
"collect": 30914,
"comment": 523,
"share": 384
},
"vipInfo": {
"type": 2,
"status": 1,
"due_date": 1620316800000,
"vip_pay_type": 0
},
"collectIds": [
15967839
],
"coin_num": 1777
}
}
```
</details>
## 查询歌曲TAG
> https://www.bilibili.com/audio/music-service-c/web/tag/song
*请求方式GET*
**url参数**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
| ------ | ---- | -------- | ------ | ---- |
| sid | num | 音频auid | 必要 | |
**json回复**
根对象:
| 字段 | 类型 | 内容 | 备注 |
| ---- | ------ | -------- | ------------- |
| code | num | 返回值 | 0成功 |
| msg | str | 错误信息 | 默认为success |
| data | array | TAG列表 | 无为空 |
`data`数组:
| 项 | 类型 | 内容 | 备注 |
| ---- | ---- | -------- | ---- |
| 0 | str | TAG1 | |
| n | str | TAG(n+1) | |
| …… | str | …… | …… |
`data`数组中的对象:
| 字段 | 类型 | 内容 | 备注 |
| ------- | ---- | ---------- | ---------------- |
| type | str | song | **作用尚不明确** |
| subtype | num | | **作用尚不明确** |
| key | num | TAG id | **作用尚不明确** |
| info | str | TAG名 | |
**示例:**
查询音频`au15664`的TAG
```shell
curl -G 'https://www.bilibili.com/audio/music-service-c/web/tag/song' \
--data-urlencode 'sid=15664'
```
<details>
<summary>查看响应示例:</summary>
```json
{
"code": 0,
"msg": "success",
"data": [
{
"type": "song",
"subtype": 0,
"key": 1,
"info": "音乐"
},
{
"type": "song",
"subtype": 1,
"key": 3,
"info": "人声"
},
{
"type": "song",
"subtype": 2,
"key": 2,
"info": "翻唱"
},
{
"type": "song",
"subtype": 3,
"key": 33,
"info": "日语"
},
{
"type": "song",
"subtype": 5,
"key": 41,
"info": "网络歌曲"
},
{
"type": "song",
"subtype": 4,
"key": 7,
"info": "流行"
}
]
}
```
</details>
## 查询歌曲创作成员列表
> https://www.bilibili.com/audio/music-service-c/web/member/song
*请求方式GET*
**url参数**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
| ------ | ---- | -------- | ------ | ---- |
| sid | num | 音频auid | 必要 | |
**json回复**
根对象:
| 字段 | 类型 | 内容 | 备注 |
| ---- | ------ | ------------ | ------------- |
| code | num | 返回值 | 0成功 |
| msg | str | 错误信息 | 默认为success |
| data | array | 成员类型列表 | 无为空 |
`data`数组:
| 项 | 类型 | 内容 | 备注 |
| ---- | ---- | ------------- | ---- |
| 0 | str | 成员类型1 | |
| n | str | 成员类型(n+1) | |
| …… | str | …… | …… |
`data`数组中的对象:
| 字段 | 类型 | 内容 | 备注 |
| ---- | ------ | ------------ | ------------------------------------------------------------ |
| list | array | 成员列表 | |
| type | num | 成员类型代码 | 1歌手<br />2作词<br />3作曲<br />4编曲<br />5后期/混音<br />7封面制作<br />8音源<br />9调音<br />10演奏<br />11乐器<br />127UP主 |
`data`数组中的对象中的`list`数组:
| 项 | 类型 | 内容 | 备注 |
| ---- | ---- | --------- | ---- |
| 0 | str | 成员1 | |
| n | str | 成员(n+1) | |
| …… | str | …… | …… |
`list`数组中的对象:
| 字段 | 类型 | 内容 | 备注 |
| --------- | ---- | ---------- | ---------------- |
| mid | num | 0 | **作用尚不明确** |
| name | str | 成员名 | |
| member_id | num | 成员id | **作用尚不明确** |
**示例:**
查询音频`au815861`的创作成员信息
```shell
curl -G 'https://www.bilibili.com/audio/music-service-c/web/member/song' \
--data-urlencode 'sid=815861'
```
<details>
<summary>查看响应示例:</summary>
```json
{
"code": 0,
"msg": "success",
"data": [
{
"list": [
{
"mid": 0,
"name": "匀子Cyrena",
"member_id": 164341
}
],
"type": 1
},
{
"list": [
{
"mid": 0,
"name": "圣月樱泪 ",
"member_id": 12349
}
],
"type": 2
},
{
"list": [
{
"mid": 0,
"name": "Days的Wing翼",
"member_id": 13777
}
],
"type": 3
},
{
"list": [
{
"mid": 0,
"name": "Days的Wing翼",
"member_id": 13777
}
],
"type": 4
},
{
"list": [
{
"mid": 0,
"name": "嘟比Dubi",
"member_id": 40902
}
],
"type": 5
},
{
"list": [
{
"mid": 0,
"name": "匀子Cyrena",
"member_id": 164222
}
],
"type": 127
}
]
}
```
</details>
## 获取歌曲歌词
> https://www.bilibili.com/audio/music-service-c/web/song/lyric
*请求方式GET*
同[查询歌曲基本信息](#查询歌曲基本信息)中的lrc歌词
**url参数**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
| ------ | ---- | -------- | ------ | ---- |
| sid | num | 音频auid | 必要 | |
**json回复**
根对象:
| 字段 | 类型 | 内容 | 备注 |
| ---- | ----------------------------- | --------------- | ------------- |
| code | num | 返回值 | 0成功 |
| msg | str | 错误信息 | 默认为success |
| data | 正确时str<br />错误时null | lrc格式歌词信息 | 无为空 |
**示例:**
获取音频`au15664`的歌词信息
```shell
curl -G 'https://www.bilibili.com/audio/music-service-c/web/song/lyric' \
--data-urlencode 'sid=15664' \
-b 'SESSDATA=xxx'
```
<details>
<summary>查看响应示例:</summary>
```json
{
"code": 0,
"msg": "success",
"data": "[ar:萧忆情]\n\n[ti:威风堂堂]\n\n[00:26.64]引诱谁去摘下禁果\n\n[00:28.11]甜美滋味偷咬一口\n\n[00:30.03]触及到了最深处果核\n\n[00:31.82]身体开始颤抖\n\n[00:33.85]舌尖已濡湿双腿内侧\n\n[00:35.55]神经末梢警报响彻\n\n[00:37.39]自内而外逐渐变得火热\n\n[00:39.14]现在无须再遵守规则\n\n[00:42.14]还故作矜持说违心的话\n\n[00:45.84]为何动作不停下\n\n[00:47.85]停下来\n\n[00:48.39]已经快停不下来\n\n[00:49.42]还想索取更多\n\n[00:50.46]踩碎那PRIDE\n\n[00:51.41]忘记毫无意义的理智存在\n\n[00:53.27]让暧昧因子在四处的徘徊\n\n[00:55.19]给我收起你那\n\n[00:56.21]太虚伪的STYLE\n\n[00:57.01]直白赤裸的爱\n\n[00:58.00]最原始的DIVE\n\n[00:58.86]喘息中断续的声音叫期待\n\n[01:00.65]别掩饰此刻\n\n[01:01.50]那让人意乱情迷的SMILE\n\n[01:10.90]缓慢吐息迷惑双眼的雾\n\n[01:12.49]强制禁锢身下轻舔锁骨\n\n[01:14.23]就让封锁的心渐渐领悟\n\n[01:15.97]别继续装无辜\n\n[01:17.54]开始脱下的衬衫\n\n[01:19.08]最后的纽扣解开它\n\n[01:20.98]快感get\n\n[01:21.85]从此不顾一切\n\n[01:23.32]还在犹豫什么\n\n[01:24.78]Darling\n\n[01:26.54]站在自由世界的正中央\n\n[01:30.09]窥探你幻想的是否太过浪荡\n\n[01:33.99]太难耐\n\n[01:34.41]分分秒秒太难耐\n\n[01:35.61]床笫间的狩猎\n\n[01:36.63]充满野心的TRY\n\n[01:37.66]不承认口头上无理的摊牌\n\n[01:39.58]只想要在身体里深埋\n\n[01:41.34]现在由我掌控\n\n[01:42.36]随心所欲的LIFE\n\n[01:43.40]给你要的未来\n\n[01:44.41]永远不腐坏\n\n[01:45.32]所有的阴暗面统统藏起来\n\n[01:46.70]仅为你一人展现那能骄傲夸耀的MIND\n\n[01:49.90]将不安的情绪碾至粉末\n\n[01:53.14]抹在你胸口印上最鲜艳的红\n\n[02:21.06]别打算缩起来置身之外\n\n[02:22.64]无论何时\n\n[02:23.27]NO TIME\n\n[02:23.58]ALL RIGHT\n\n[02:24.21]打破一切的羞耻值\n\n[02:25.43]哪里奇怪\n\n[02:26.06]哪里奇怪\n\n[02:26.68]哪里奇怪\n\n[02:27.30]BURN BURN BURN\n\n[02:28.22]想要的就是那\n\n[02:29.17]啊 没错\n\n[02:29.87]再给我更多的触摸\n\n[02:31.62]顺位交换贴近肌肤的DANCE\n\n[02:33.34]好吧 肆无忌惮\n\n[02:34.98]停下来\n\n[02:35.35]已经快停不下来\n\n[02:36.50]还想索取更多\n\n[02:37.68]踩碎那PRIDE\n\n[02:38.38]忘记毫无意义的理智存在\n\n[02:40.27]让暧昧因子在四处的徘徊\n\n[02:42.11]给我收起你那\n\n[02:43.16]太虚伪的STYLE\n\n[02:44.00]直白赤裸的爱\n\n[02:45.06]最原始的DIVE\n\n[02:45.90]喘息中断续的声音叫期待\n\n[02:47.76]别掩饰此刻那让人意乱情迷的SMILE\n\n[02:50.64]将不安的情绪碾至粉末\n\n[02:54.09]抹在你胸口印上最鲜艳的红\n\n[02:58.35]抛弃所有只想拥有此刻\n\n"
}
```
</details>

790
docs/audio/music_list.md Normal file
View File

@@ -0,0 +1,790 @@
# 歌单&音频收藏夹详细信息
- [歌单&音频收藏夹详细信息](#歌单音频收藏夹详细信息)
- [查询自己创建的歌单](#查询自己创建的歌单)
- [查询音频收藏夹(默认歌单)信息](#查询音频收藏夹默认歌单信息)
- [查询热门歌单](#查询热门歌单)
- [查询热门榜单](#查询热门榜单)
---
## 查询自己创建的歌单
> https://www.bilibili.com/audio/music-service-c/web/collections/list
*请求方式GET*
认证方式CookieSESSDATA
鉴权方式Cookie中`DedeUserID`存在且不为0
**url参数**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
| ------ | ---- | -------- | ------ | ---- |
| pn | num | 页码 | 必要 | |
| ps | num | 每页项数 | 必要 | |
**json回复**
根对象:
| 字段 | 类型 | 内容 | 备注 |
| ---- | ----------------------------- | -------- | ----------------------------------------------------- |
| code | num | 返回值 | 0成功<br />72000000参数错误<br />72010002未登录 |
| msg | str | 错误信息 | 默认为success |
| data | 正确时obj<br />错误时null | 信息本体 | |
`data`对象:
| 字段 | 类型 | 内容 | 备注 |
| --------- | ------ | ------------ | ---- |
| curPage | num | 当前页码 | |
| pageCount | num | 总计页数 | |
| totalSize | num | 总计收藏夹数 | |
| pageSize | num | 当前页面项数 | |
| data | array | 歌单列表 | |
`data`中的`data`数组:
| 项 | 类型 | 内容 | 备注 |
| ---- | ---- | ----------------- | ---- |
| 0 | obj | 音频收藏夹mlid1 | |
| n | obj | 音频收藏夹mlid(n+1) | |
| …… | obj | …… | …… |
`data`数组中的对象:
| 字段 | 类型 | 内容 | 备注 |
| --------- | ------ | ------------------------ | -------------------------------- |
| id | num | 音频收藏夹mlid | |
| uid | num | 创建用户mid | |
| uname | str | 创建用户昵称 | |
| title | str | 歌单标题 | |
| type | num | 收藏夹属性 | 0普通收藏夹<br />1默认收藏夹 |
| published | num | 是否公开 | 0不公开<br />1公开 |
| cover | str | 歌单封面图片url | |
| ctime | num | 歌单创建时间 | 时间戳 |
| song | num | 歌单中的音乐数量 | |
| desc | str | 歌单备注信息 | |
| sids | array | 歌单中的音乐 | |
| menuId | num | 音频收藏夹对应的歌单amid | |
| statistic | obj | 歌单状态数信息 | |
`data`中的`sids`数组:
| 项 | 类型 | 内容 | 备注 |
| ---- | ---- | ------------------- | ---------------- |
| 0 | num | 收藏的音频auid1 | |
| n | num | 收藏的音频auid(n+1) | 按照歌单顺序排列 |
| …… | num | …… | …… |
`data`中的`statistic`对象:
| 字段 | 类型 | 内容 | 备注 |
| ------- | ---- | ------------------------ | ---- |
| sid | num | 音频收藏夹对应的歌单amid | |
| play | num | 播放数 | |
| collect | num | 收藏数 | |
| comment | null | 评论数 | |
| share | num | 分享数 | |
**示例:**
```shell
curl -G 'https://www.bilibili.com/audio/music-service-c/web/collections/list' \
--data-urlencode 'ps=2' \
--data-urlencode 'pn=1' \
-b 'SESSDATA=xxx;DedeUserID=1;'
```
共计创建了两个歌单,如下
<details>
<summary>查看响应示例:</summary>
```json
{
"code": 0,
"msg": "success",
"data": {
"curPage": 1,
"pageCount": 1,
"totalSize": 2,
"pageSize": 2,
"data": [
{
"id": 15967839,
"uid": 293793435,
"uname": "社会易姐QwQ",
"title": "默认歌单",
"type": 1,
"published": 1,
"cover": "http://i0.hdslb.com/bfs/music/1e079693701d2f525850c288fcc48fa4259a73f6.jpg",
"ctime": 1519295502,
"song": 13,
"desc": "",
"sids": [
11673,
276404,
15664,
737904,
108588,
1286999,
658085,
682118,
736952,
48716,
15711,
13598,
57744
],
"menuId": 15958713,
"statistic": {
"sid": 15958713,
"play": 0,
"collect": 0,
"comment": null,
"share": 0
}
},
{
"id": 30894022,
"uid": 293793435,
"uname": "社会易姐QwQ",
"title": "test",
"type": 0,
"published": 1,
"cover": "",
"ctime": 1590154346,
"song": 0,
"desc": "test1",
"sids": [],
"menuId": 30866686,
"statistic": {
"sid": 30866686,
"play": 0,
"collect": 0,
"comment": 0,
"share": 0
}
}
]
}
}
```
</details>
## 查询音频收藏夹(默认歌单)信息
> https://www.bilibili.com/audio/music-service-c/web/collections/info
*请求方式GET*
认证方式CookieSESSDATA
鉴权方式Cookie中`DedeUserID`存在且不为0
**url参数**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
| ------ | ---- | ------------ | ------ | ------------------ |
| sid | num | 音频收藏夹mlid | 必要 | 必须为默认收藏夹mlid |
**json回复**
根对象:
| 字段 | 类型 | 内容 | 备注 |
| ---- | ----------------------------- | -------- | ----------------------------------------------------- |
| code | num | 返回值 | 0成功<br />72000000参数错误<br />72010002未登录 |
| msg | str | 错误信息 | 默认为success |
| data | 正确时obj<br />错误时null | 信息本体 | |
`data`对象:
| 字段 | 类型 | 内容 | 备注 |
| --------- | ------ | ------------------------ | ---------------------- |
| id | num | 音频收藏夹mlid | |
| uid | num | 创建用户mid | |
| uname | str | 创建用户昵称 | |
| title | str | 默认歌单 | 恒为`默认歌单` |
| type | num | 1 | 恒为`1` |
| published | num | 是否公开 | 0不公开<br />1公开 |
| cover | str | 歌单封面图片url | |
| ctime | num | 歌单创建时间 | 时间戳 |
| song | num | 歌单中的音乐数量 | |
| desc | str | 空 | 恒为空 |
| sids | array | 歌单中的音乐 | |
| menuId | num | 音频收藏夹对应的歌单amid | 与普通歌单不同通用 |
| statistic | obj | 歌单状态数信息 | |
`data`中的`sids`数组:
| 项 | 类型 | 内容 | 备注 |
| ---- | ---- | ------------------- | ---------------- |
| 0 | num | 收藏的音频auid1 | |
| n | num | 收藏的音频auid(n+1) | 按照歌单顺序排列 |
| …… | num | …… | …… |
`data`中的`statistic`对象:
| 字段 | 类型 | 内容 | 备注 |
| ------- | ---- | ------------------------ | ---- |
| sid | num | 音频收藏夹对应的歌单amid | |
| play | num | 0 | |
| collect | num | 0 | |
| comment | null | - | |
| share | num | 0 | |
**示例:**
查询我的默认歌单id为` 15967839 `
```shell
curl -G 'https://www.bilibili.com/audio/music-service-c/web/collections/info' \
--data-urlencode 'sid=15967839 ' \
-b 'SESSDATA=xxx;DedeUserID=1;'
```
<details>
<summary>查看响应示例:</summary>
```json
{
"code": 0,
"msg": "success",
"data": {
"id": 15967839,
"uid": 293793435,
"uname": "社会易姐QwQ",
"title": "默认歌单",
"type": 1,
"published": 1,
"cover": "http://i0.hdslb.com/bfs/music/1e079693701d2f525850c288fcc48fa4259a73f6.jpg",
"ctime": 1519295502,
"song": 13,
"desc": "",
"sids": [
11673,
276404,
15664,
737904,
108588,
1286999,
658085,
682118,
736952,
48716,
15711,
13598,
57744
],
"menuId": 15958713,
"statistic": {
"sid": 15958713,
"play": 0,
"collect": 0,
"comment": null,
"share": 0
}
}
}
```
</details>
## 查询热门歌单
> https://www.bilibili.com/audio/music-service-c/web/menu/hit
*请求方式GET*
**url参数**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
| --- | --- | ---- | --- | --- |
| pn | num | 页码 | 必要 | |
| ps | num | 每页项数 | 必要 | |
**json回复**
根对象:
| 字段 | 类型 | 内容 | 备注 |
| ---- | --------------------- | ---- | ----------------------------------------- |
| code | num | 返回值 | 0成功<br />72000000参数错误<br />72010002未登录 |
| msg | str | 错误信息 | 默认为success |
| data | 正确时obj<br />错误时null | 信息本体 | |
`data`对象:
| 字段 | 类型 | 内容 | 备注 |
| --------- | ----- | ------ | --- |
| curPage | num | 当前页码 | |
| pageCount | num | 总计页数 | |
| totalSize | num | 总计收藏夹数 | |
| pageSize | num | 当前页面项数 | |
| data | array | 歌单列表 | |
`data`中的`data`数组:
| 项 | 类型 | 内容 | 备注 |
| --- | --- | -------------- | --- |
| 0 | obj | 音频收藏夹mlid1 | |
| n | obj | 音频收藏夹mlid(n+1) | |
| …… | obj | …… | …… |
`data`数组中的对象:
| 字段 | 类型 | 内容 | 备注 |
| --------- | --- | -------------- | ----------------------------- |
| menuId | num | 音频收藏夹对应的歌单amid | |
| uid | num | 创建用户mid | |
| uname | str | 创建用户昵称 | |
| title | str | 歌单标题 | |
| cover | str | 歌单封面图片url | |
| intro | str | 歌单介绍 | |
| type | num | 歌单属性 | 1普通歌单<br/>2置顶歌单<br/>5PGC歌单 |
| off | num | 歌单是否公开 | 0公开<br/>1私密 |
| ctime | num | 歌单创建时间 | 时间戳 |
| curtime | num | 当前时间 | 时间戳 |
| statistic | obj | 歌单状态数信息 | |
| snum | num | 歌单包含歌曲个数 | |
`data`中的`statistic`对象:
| 字段 | 类型 | 内容 | 备注 |
| ------- | --- | -------------- | --- |
| sid | num | 音频收藏夹对应的歌单amid | |
| play | num | 播放数 | |
| collect | num | 收藏数 | |
| comment | num | 评论数 | |
| share | num | 分享数 | |
**示例:**
```shell
curl -G 'https://www.bilibili.com/audio/music-service-c/web/menu/hit' \
--data-urlencode 'ps=1' \
--data-urlencode 'pn=6'
```
使用参数:`ps=1&qn=2`
<details>
<summary>查看响应示例:</summary>
```json
{
"code": 0,
"msg": "success",
"data": {
"curPage": 1,
"pageCount": 1,
"totalSize": 11,
"pageSize": 3,
"data": [{
"menuId": 10624,
"uid": 32708543,
"uname": "大家的音乐姬",
"title": "新曲推荐",
"cover": "http://i0.hdslb.com/bfs/music/a32c1ed4f6ec3f74f8240f4486a750dda3a509e5.jpg",
"intro": "每天11:00更新为你推送最新音乐",
"type": 2,
"off": 0,
"ctime": 1501209433,
"curtime": 1655712354,
"statistic": {
"sid": 10624,
"play": 2366255,
"collect": 20565,
"comment": 1104,
"share": 622
},
"snum": 16,
"attr": 0,
"isDefault": 0,
"collectionId": 0
}, {
"menuId": 125312,
"uid": 32708543,
"uname": "大家的音乐姬",
"title": "丧甜可口?你意想不到的软萌电音",
"cover": "http://i0.hdslb.com/bfs/music/04f6c29ed094368253bc05fecb7bf990cee2d3a3.jpg",
"intro": "这个化学反应是怦然心动?",
"type": 1,
"off": 0,
"ctime": 1533298738,
"curtime": 1655712354,
"statistic": {
"sid": 125312,
"play": 298018,
"collect": 9928,
"comment": 89,
"share": 239
},
"snum": 19,
"attr": 0,
"isDefault": 0,
"collectionId": 0
}, {
"menuId": 26241,
"uid": 32708543,
"uname": "大家的音乐姬",
"title": "那些听了会泪目的动漫歌曲",
"cover": "http://i0.hdslb.com/bfs/music/006832318fc85fdf287667d51d83dba3b78be808.jpg",
"intro": "那些年陪伴我们的动漫歌曲,你还记得吗?\n",
"type": 1,
"off": 0,
"ctime": 1509608572,
"curtime": 1655712354,
"statistic": {
"sid": 26241,
"play": 370120,
"collect": 8390,
"comment": 110,
"share": 131
},
"snum": 12,
"attr": 0,
"isDefault": 0,
"collectionId": 0
}]
}
}
```
</details>
## 查询热门榜单
> https://www.bilibili.com/audio/music-service-c/web/menu/rank
*请求方式GET*
**url参数**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
| --- | --- | ---- | --- | --- |
| pn | num | 页码 | 必要 | |
| ps | num | 每页项数 | 必要 | |
**json回复**
根对象:
| 字段 | 类型 | 内容 | 备注 |
| ---- | --------------------- | ---- | ----------------------------------------- |
| code | num | 返回值 | 0成功<br />72000000参数错误<br />72010002未登录 |
| msg | str | 错误信息 | 默认为success |
| data | 正确时obj<br />错误时null | 信息本体 | |
`data`对象:
| 字段 | 类型 | 内容 | 备注 |
| --------- | ----- | ------ | --- |
| curPage | num | 当前页码 | |
| pageCount | num | 总计页数 | |
| totalSize | num | 总计收藏夹数 | |
| pageSize | num | 当前页面项数 | |
| data | array | 歌单列表 | |
`data`中的`data`数组:
| 项 | 类型 | 内容 | 备注 |
| --- | --- | -------------- | --- |
| 0 | obj | 音频收藏夹mlid1 | |
| n | obj | 音频收藏夹mlid(n+1) | |
| …… | obj | …… | …… |
`data`数组中的对象:
| 字段 | 类型 | 内容 | 备注 |
| --------- | ----- | -------------- | ----------------------------- |
| menuId | num | 音频收藏夹对应的歌单amid | |
| uid | num | 创建用户mid | |
| uname | str | 创建用户昵称 | |
| title | str | 歌单标题 | |
| cover | str | 歌单封面图片url | |
| intro | str | 歌单介绍 | |
| type | num | 歌单属性 | 1普通歌单<br/>2置顶歌单<br/>5PGC歌单 |
| off | num | 歌单是否公开 | 0公开<br/>1私密 |
| ctime | num | 歌单创建时间 | 时间戳 |
| curtime | num | 当前时间 | 时间戳 |
| statistic | obj | 歌单状态数信息 | |
| snum | num | 歌单包含歌曲个数 | |
| audios | array | 歌单中的音乐信息(部分) | |
`data`数组中的`statistic`对象:
| 字段 | 类型 | 内容 | 备注 |
| ------- | --- | -------------- | --- |
| sid | num | 音频收藏夹对应的歌单amid | |
| play | num | 收藏数 | |
| collect | num | 点赞数 | |
| comment | num | 评论数 | |
| share | num | 分享数 | |
`data`数组中的`audios`数组:
| 项 | 类型 | 内容 | 备注 |
| --- | --- | ------- | --- |
| 0 | obj | 音频1 | |
| n | obj | 音频(n+1) | |
| …… | obj | …… | …… |
`audios`数组中的`audios`对象:
| 字段 | 类型 | 内容 | 备注 |
| -------- | --- | ---- | ------- |
| id | num | 音频id | |
| title | str | 音频标题 | |
| duration | num | 音频时长 | 单位:秒(s) |
**示例:**
```shell
curl -G 'https://www.bilibili.com/audio/music-service-c/web/menu/rank' \
--data-urlencode 'ps=1' \
--data-urlencode 'pn=6'
```
使用参数:`ps=1&qn=6`
<details>
<summary>查看响应示例:</summary>
```json
{
"code": 0,
"msg": "success",
"data": {
"curPage": 1,
"pageCount": 2,
"totalSize": 12,
"pageSize": 6,
"data": [{
"menuId": 10624,
"uid": 32708543,
"uname": "大家的音乐姬",
"title": "新曲推荐",
"cover": "http://i0.hdslb.com/bfs/music/a32c1ed4f6ec3f74f8240f4486a750dda3a509e5.jpg",
"intro": "每天11:00更新为你推送最新音乐",
"type": 2,
"off": 0,
"ctime": 1501209433,
"curtime": 1655713346,
"statistic": {
"sid": 10624,
"play": 2366255,
"collect": 20565,
"comment": 1104,
"share": 622
},
"snum": 16,
"attr": 0,
"isDefault": 0,
"collectionId": 0,
"audios": [{
"id": 1572281,
"title": "【Mitchie M】Nechusho No!No! (feat. 初音未来 & MEIKO)",
"duration": 112
}, {
"id": 1551077,
"title": "【洛天依原创】双星伴生",
"duration": 197
}, {
"id": 1544428,
"title": "【小柔】寄り酔いcover",
"duration": 216
}]
}, {
"menuId": 10627,
"uid": 32708543,
"uname": "大家的音乐姬",
"title": "热歌榜每日11:00更新",
"cover": "http://i0.hdslb.com/bfs/music/bc735b32ab123f7ddc602b9194defae2cd66062f.jpg",
"intro": "每日上午11:00更新精选三日内热门投稿作品。",
"type": 2,
"off": 0,
"ctime": 1501211353,
"curtime": 1655713346,
"statistic": {
"sid": 10627,
"play": 2289612,
"collect": 11437,
"comment": 434,
"share": 223
},
"snum": 20,
"attr": 0,
"isDefault": 0,
"collectionId": 0,
"audios": [{
"id": 1955567,
"title": "山海(原唱:草东没有派对)",
"duration": 215
}, {
"id": 923884,
"title": "platiunm",
"duration": 181
}, {
"id": 1954370,
"title": "Dark Dawn v1",
"duration": 200
}]
}, {
"menuId": 10628,
"uid": 32708543,
"uname": "大家的音乐姬",
"title": "原创榜每日11:00更新",
"cover": "http://i0.hdslb.com/bfs/music/58782504cefb307878d12422fd365ed7f971fad1.jpg",
"intro": "每日上午11:00更新精选三日内原创投稿音乐。",
"type": 2,
"off": 0,
"ctime": 1501211627,
"curtime": 1655713346,
"statistic": {
"sid": 10628,
"play": 395817,
"collect": 2583,
"comment": 314,
"share": 88
},
"snum": 20,
"attr": 0,
"isDefault": 0,
"collectionId": 0,
"audios": [{
"id": 923884,
"title": "platiunm",
"duration": 181
}, {
"id": 1954370,
"title": "Dark Dawn v1",
"duration": 200
}, {
"id": 1954654,
"title": "张真源 - 你要快乐 (Live)",
"duration": 235
}]
}, {
"menuId": 10629,
"uid": 32708543,
"uname": "大家的音乐姬",
"title": "中文人声三日榜",
"cover": "http://i0.hdslb.com/bfs/music/f547e3b96d3f283eaa6a3a071de22092fb5101f8.jpg",
"intro": "每日上午11:00更新精选三日内中文人声投稿音乐。",
"type": 2,
"off": 0,
"ctime": 1501211818,
"curtime": 1655713346,
"statistic": {
"sid": 10629,
"play": 842507,
"collect": 5102,
"comment": 362,
"share": 137
},
"snum": 20,
"attr": 0,
"isDefault": 0,
"collectionId": 0,
"audios": [{
"id": 1955567,
"title": "山海(原唱:草东没有派对)",
"duration": 215
}, {
"id": 1955546,
"title": "爱你",
"duration": 86
}, {
"id": 1954654,
"title": "张真源 - 你要快乐 (Live)",
"duration": 235
}]
}, {
"menuId": 10630,
"uid": 32708543,
"uname": "大家的音乐姬",
"title": "日文人声三日榜",
"cover": "http://i0.hdslb.com/bfs/music/7dd5d629f50481e22e2f5eced510f5fbd89f5233.jpg",
"intro": "每日上午11:00更新精选三日内日文人声投稿音乐。",
"type": 2,
"off": 0,
"ctime": 1501211959,
"curtime": 1655713346,
"statistic": {
"sid": 10630,
"play": 891268,
"collect": 8671,
"comment": 601,
"share": 169
},
"snum": 20,
"attr": 0,
"isDefault": 0,
"collectionId": 0,
"audios": [{
"id": 1954053,
"title": "派对浪客诸葛孔明 插入歌『ChocoPate』久远七海 starring Lezel",
"duration": 117
}, {
"id": 1956316,
"title": "ただ君に晴れ(只给予你的晴天)",
"duration": 196
}, {
"id": 1956321,
"title": "うまぴょい伝説(马儿蹦跳传说)",
"duration": 262
}]
}, {
"menuId": 10631,
"uid": 32708543,
"uname": "大家的音乐姬",
"title": "VOCALOID三日榜",
"cover": "http://i0.hdslb.com/bfs/music/ce8b1646cbbd5513de7976ba81d0fd9c340c1899.jpg",
"intro": "每日上午11:00更新精选三日内VOCALOID投稿音乐。",
"type": 2,
"off": 0,
"ctime": 1501212166,
"curtime": 1655713346,
"statistic": {
"sid": 10631,
"play": 170112,
"collect": 2900,
"comment": 528,
"share": 60
},
"snum": 10,
"attr": 0,
"isDefault": 0,
"collectionId": 0,
"audios": [{
"id": 1954717,
"title": "弦歌引-翻调",
"duration": 230
}, {
"id": 1956148,
"title": "告RADIO - 春色リップ",
"duration": 253
}, {
"id": 1954302,
"title": "susan说",
"duration": 195
}]
}]
}
}
```
</details>

View File

@@ -0,0 +1,282 @@
# 音频流URL
<img src="../../assets/img/download.svg" width="100" height="100"/>
- [获取音频流URL无法获取付费音频web端](#获取音频流url无法获取付费音频web端)
- [获取音频流URL可获取付费音频双端](#获取音频流url可获取付费音频双端)
- [音频流的获取](#音频流的获取)
---
音质`qn`参数:
| 代码 | 含义 |
| ---- | -------------------- |
| 0 | 流畅 128K |
| 1 | 标准 192K |
| 2 | 高品质 320K |
| 3 | 无损 FLAC (大会员) |
## 获取音频流URL无法获取付费音频web端
> https://www.bilibili.com/audio/music-service-c/web/url
*请求方式GET*
**注web端无法播放完整付费歌曲付费歌曲为30s试听片段**
本接口仅能获取192K音质的音频
**url参数**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
| ------ | ---- | -------- | ------ | ---- |
| sid | num | 音频auid | 必要 | |
**json回复**
根对象:
| 字段 | 类型 | 内容 | 备注 |
| ---- | ---- | -------- | ----------------------------------------------------------- |
| code | num | 返回值 | 0:成功<br />7201006未找到或已下架<br />72000000请求错误 |
| msg | str | 错误信息 | 默认为success |
| data | obj | 数据本体 | |
`data`对象:
| 字段 | 类型 | 内容 | 备注 |
| --------- | ----- | --------- | --------------------------------------- |
| sid | num | 音频auid | |
| type | num | 音质标识 | -1试听片段192K<br />1192K |
| info | str | 空 | **作用尚不明确** |
| timeout | num | 有效时长 | 单位为秒<br />一般为3h |
| size | num | 文件大小 | 单位为字节<br />当`type`为-1时`size`为0 |
| cdns | array | 音频流url | |
| qualities | null | - | |
| title | null | - | |
| cover | null | - | |
`data`对象的`cdns`数组:
| 项 | 类型 | 内容 | 备注 |
| ---- | ---- | ------------- | ---- |
| 0 | str | 音频流url | |
| 1 | str | 备用音频流url | |
**示例:**
```shell
curl -G 'https://www.bilibili.com/audio/music-service-c/web/url' \
--data-urlencode 'sid=sid=15664'
```
<details>
<summary>查看响应示例:</summary>
```json
{
"code": 0,
"msg": "success",
"data": {
"sid": 15664,
"type": 1,
"info": "",
"timeout": 10800,
"size": 4853263,
"cdns": [
"https://upos-sz-mirrorkodo.bilivideo.com/ugaxcode/7bf6a3a3e94421ccc653f005457b1e8c-192k.m4a?deadline=1595331310&gen=uga&os=kodobv&uparams=deadline,gen,os&upsig=0ecd3c7a8d9539f260239d8fa4c093db",
"https://upos-sz-mirrorks3.bilivideo.com/ugaxcode/7bf6a3a3e94421ccc653f005457b1e8c-192k.m4a?deadline=1595331310&gen=uga&os=ks3bv&uparams=deadline,gen,os&upsig=f3fe53aff56655b1b7264ae4ab65872e"
],
"qualities": null,
"title": null,
"cover": null
}
}
```
</details>
## 获取音频流URL可获取付费音频双端
> https://api.bilibili.com/audio/music-service-c/url
*请求方式GET*
认证方式APP或CookieSESSDATA
**注付费音乐需要有带大会员或音乐包的账号登录Cookie或APP否则为试听片段**
无损音质需要登录的用户为会员
**url参数**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
| ---------- | ---- | ------------ | ----------- | -------------- |
| access_key | str | APP登录Token | APP方式必要 | |
| songid | num | 音频auid | 必要 | |
| quality | num | 音质代码 | 必要 | **详情见上表** |
| privilege | num | 必须为`2` | 必要 | |
| mid | num | 当前用户mid | 必要 | 可为任意值 |
| platform | str | 平台标识 | 必要 | 可为任意值 |
**json回复**
根对象:
| 字段 | 类型 | 内容 | 备注 |
| ---- | ---- | -------- | ----------------------------------------------------------- |
| code | num | 返回值 | 0:成功<br />7201006未找到或已下架<br />72000000请求错误 |
| msg | str | 错误信息 | 默认为success |
| data | obj | 数据本体 | |
`data`对象:
| 字段 | 类型 | 内容 | 备注 |
| --------- | ----- | ----------- | ------------------------------------------------------------ |
| sid | num | 音频auid | |
| type | num | 音质标识 | -1试听片段192K<br />0128K<br />1192K<br />2320K<br />3FLAC |
| info | str | 空 | **作用尚不明确** |
| timeout | num | 有效时长 | 单位为秒<br />一般为3h |
| size | num | 文件大小 | 单位为字节<br />当`type`为-1时`size`为0 |
| cdns | array | 音频流url | |
| qualities | array | 音质列表 | |
| title | str | 音频标题 | |
| cover | str | 音频封面url | |
`data`对象的`cdns`数组:
| 项 | 类型 | 内容 | 备注 |
| ---- | ---- | ------------- | ---- |
| 0 | str | 音频流url | |
| 1 | str | 备用音频流url | |
`data`对象的`qualities`数组:
| 项 | 类型 | 内容 | 备注 |
| ---- | ---- | ----------- | ---------------- |
| 0 | obj | 音质1 | 音质由高向低顺序 |
| n | obj | 音质n+1 | |
`qualities`数组中的对象:
| 字段 | 类型 | 内容 | 备注 |
| ----------- | ---- | ---------------- | ---------------------- |
| type | num | 音质代码 | **详情见上表** |
| desc | str | 音质名称 | |
| size | num | 该音质的文件大小 | 单位为字节 |
| bps | str | 比特率标签 | |
| tag | str | 音质标签 | |
| require | num | 是否需要会员权限 | 0不需要<br />1需要 |
| requiredesc | str | 会员权限标签 | |
**示例:**
获取音频`au682118`的音频流url音质为`3无损`
Cookie方式
```shell
curl -G 'https://api.bilibili.com/audio/music-service-c/url
--data-urlencode 'songid=682118' \
--data-urlencode 'quality=3' \
--data-urlencode 'privilege=2' \
--data-urlencode 'platform=android' \
--data-urlencode 'mid=293793435' \
-b 'SESSDATA=xxx'
```
APP方式
```shell
curl -G 'https://api.bilibili.com/audio/music-service-c/url
--data-urlencode 'access_key=xxx' \
--data-urlencode 'songid=682118' \
--data-urlencode 'quality=3' \
--data-urlencode 'privilege=2' \
--data-urlencode 'platform=android' \
--data-urlencode 'mid=293793435'
```
<details>
<summary>查看响应示例:</summary>
```json
{
"code": 0,
"msg": "success",
"data": {
"sid": 682118,
"type": 3,
"info": "",
"timeout": 10800,
"size": 34456494,
"cdns": [
"https://upos-sz-mirrorkodo.bilivideo.com/ugaxcode/m190102ws2pzf6jitbem841vq2x0du5x-flac.flac?deadline=1595332269&gen=uga&os=kodobv&uparams=deadline,gen,os&upsig=ac2284d97a61ef8758681eccf621c56d",
"https://upos-sz-mirrorks3.bilivideo.com/ugaxcode/m190102ws2pzf6jitbem841vq2x0du5x-flac.flac?deadline=1595332269&gen=uga&os=ks3bv&uparams=deadline,gen,os&upsig=3ac7d94dda5664f6f95dbfffeb289744"
],
"qualities": [
{
"type": 3,
"desc": "无损音质",
"size": 34456494,
"bps": "",
"tag": "SQ",
"require": 1,
"requiredesc": "付费享受"
},
{
"type": 2,
"desc": "高品质",
"size": 10788682,
"bps": "320kbit/s",
"tag": "HQ",
"require": 0,
"requiredesc": ""
},
{
"type": 1,
"desc": "标准",
"size": 6491973,
"bps": "192kbit/s",
"tag": "",
"require": 0,
"requiredesc": ""
},
{
"type": 0,
"desc": "流畅",
"size": 4343667,
"bps": "128kbit/s",
"tag": "",
"require": 0,
"requiredesc": ""
}
],
"title": "aLIEz",
"cover": "http://i0.hdslb.com/bfs/music/61d3f8cfdce14d2d1b006af59559c9bd22a2d21b.jpg"
}
}
```
</details>
## 音频流的获取
`data`.`cdns`.`[0]``data`.`cdns`.`[1]`中的内容作为url进行GET操作
需要验证请求`user-agent` 不为空
**user-agent错误并且referer不在`*.bilibili.com`域名下的情况下会导致403 Forbidden故无法获取**
**以上述音频url为例**
```shell
wget 'https://upos-sz-mirrorkodo.bilivideo.com/ugaxcode/m190102ws2pzf6jitbem841vq2x0du5x-flac.flac?deadline=1595332269&gen=uga&os=kodobv&uparams=deadline,gen,os&upsig=ac2284d97a61ef8758681eccf621c56d' \
-O 'Download_music.flac'
```
响应正文将返回一个flac文件

View File

@@ -0,0 +1,67 @@
# 音频状态数
- [歌曲状态数](#歌曲状态数)
---
## 歌曲状态数
>https://www.bilibili.com/audio/music-service-c/web/stat/song
*请求方式GET*
唯缺投币数2333333
**url参数**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
| ------ | ---- | -------- | ------ | ---- |
| sid | num | 音频auid | 必要 | |
**json回复**
根对象:
| 字段 | 类型 | 内容 | 备注 |
| ---- | ---- | -------- | ------------------------------- |
| code | num | 返回值 | 0成功<br />72000000参数错误 |
| msg | str | 错误信息 | 默认为success |
| data | obj | 信息本体 | |
`data`对象:
| 字段 | 类型 | 内容 | 备注 |
| ------- | ---- | -------- | ---- |
| sid | num | 音频auid | |
| play | num | 播放次数 | |
| collect | num | 收藏数 | |
| comment | num | 评论数 | |
| share | num | 分享数 | |
**示例:**
查询歌曲`au15664`的状态数
```shell
curl -G 'https://www.bilibili.com/audio/music-service-c/web/stat/song' \
--data-urlencode 'sid=15664'
```
<details>
<summary>查看响应示例:</summary>
```json
{
"code": 0,
"msg": "success",
"data": {
"sid": 15664,
"play": 1377390,
"collect": 44340,
"comment": 2756,
"share": 4114
}
}
```
</details>