From 852953ddbfbe81817781b05ef19d6def0e0c97d0 Mon Sep 17 00:00:00 2001
From: SocialSisterYi <1440239038@qq.com>
Date: Sun, 3 Dec 2023 04:10:55 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=20APIDoc=E3=80=90AI=E6=80=BB?=
=?UTF-8?q?=E7=BB=93=E3=80=91?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
docs/video/summary.md | 218 ++++++++++++++----------------------------
1 file changed, 71 insertions(+), 147 deletions(-)
diff --git a/docs/video/summary.md b/docs/video/summary.md
index a8aa971cb7..e2e84f0cf8 100644
--- a/docs/video/summary.md
+++ b/docs/video/summary.md
@@ -1,24 +1,12 @@
-**# 视频AI总结**
-
-
+# 视频AI总结
-
-
-**## 获取总结**
-
-
+## 获取AI总结内容
> https://api.bilibili.com/x/web-interface/view/conclusion/get
-
-
-**请求方式: Get**
-
-认证方式: Cookie(SESSDATA)
-
-限制游客访问,需要登录
+*请求方式: GET*
鉴权方式:[Wbi 签名](../misc/sign/wbi.md)
@@ -26,9 +14,10 @@
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
|--------|-----|--------|-----|----------------------------------|
-| bvid | str | 稿件bvid | 必要 | |
-| cid | num | 稿件cid | 必要 | |
-| up_mid | num | UP主mid | 必要 | |
+| aid | num | 稿件 avid | 必要(可选) | avid与bvid任选一个 |
+| bvid | str | 稿件 bvid | 必要(可选) | avid与bvid任选一个 |
+| cid | num | 视频 cid | 必要 | |
+| up_mid | num | UP主 mid | 非必要 | |
| w_rid | str | Wbi 签名 | 必要 | 详见 [Wbi 签名](../misc/sign/wbi.md) |
| wts | num | 当前时间戳 | 必要 | 详见 [Wbi 签名](../misc/sign/wbi.md) |
@@ -38,7 +27,7 @@
| 字段 | 类型 | 内容 | 备注 |
|---------|-----|------|--------------------------|
-| code | num | 返回值 | 0: 成功
-403: 访问权限不足 |
+| code | num | 返回值 | 0: 成功
-400:请求错误
-403: 访问权限不足 |
| message | str | 错误信息 | 默认为0 |
| ttl | num | 1 | |
| data | obj | 数据本体 | |
@@ -47,74 +36,65 @@
| 字段 | 类型 | 内容 | 备注 |
|--------------|-----|------|----------------------|
-| code | num | 返回值 | 0: 有摘要
-1: 没有摘要 |
+| code | num | 返回值 | -1: 不支持AI摘要(敏感内容)
0: 有摘要
1:无摘要(未识别到语音) |
| model_result | obj | 摘要内容 | |
+| stid | str | 摘要 id | 如`code=1`且该字段为`0`时,则未进行 AI 总结,即添加总结队列
如`code=1`且该字段为空时未识别到语音 |
+| status | num | (?) | |
+| like_num | num | 点赞数 | 默认为`0` |
+| dislike_num | num | 点踩数 | 默认为`0` |
-`model_result`对象:
+`data`中的`model_result`对象:
| 字段 | 类型 | 内容 | 备注 |
|-------------|-----|----------|------------------------------------------|
-| result_type | num | 数据类型 | 0: 没有摘要或者没有时间线
2: 有时间线
(1暂不知晓) |
-| summary | str | 整个视频总结 | |
-| outline | obj | 时间线 | 没有时间线为None |
-| like_num | num | 喜欢人数 | |
-| dislike_num | num | 不喜欢人数 | |
-| stid | num | 摘要id | 没有摘要为0 |
-| status | num | 状态(暂不知晓) | 正常为0 |
+| result_type | num | 数据类型 | 0: 没有摘要
1:仅存着摘要总结
2:存着摘要以及提纲 |
+| summary | str | 视频摘要 | 通常为一段概括整个视频内容的文本 |
+| outline | 有数据时:array
无数据时:null | 分段提纲 | 通常为视频中叙述的各部分及其要点 |
-`outline`对象:
+`model_result`对象中的`outline`数组:
-| 字段 | 类型 | 内容 | 备注 |
-|--------------|-----|------|----|
-| title | str | 分段标题 | |
-| part_outline | obj | 分段小结 | |
+| 项 | 类型 | 内容 | 备注 |
+|-----|-----|---------|-----|
+| 0 | obj | 总结分段1 | |
+| n | obj | 总结分段(n+1) | |
+| …… | obj | …… | …… |
-`part_outline`对象:
+`outline`数组中的对象:
-| 字段 | 类型 | 内容 | 备注 |
-|-----------|-----|-------|----|
-| timestamp | num | 小结时间戳 | |
-| content | str | 小结内容 | |
-
-**示例**
+| 字段 | 类型 | 内容 | 备注 |
+|--------------|-----|------|----|
+| title | str | 分段标题 | 段落内容的概括 |
+| part_outline | array | 分段要点 | 当前分段中多个提到的细节 |
+| timestamp | num | 分段起始时间 | 单位为秒 |
-得到视频`BV1L94y1H7CV`的摘要
+`outline`数组中的对象中的`part_outline`数组:
-```shell
-curl 'https://api.bilibili.com/x/web-interface/view/conclusion/get?bvid=BV1L94y1H7CV&cid=1335073288&up_mid=297242063&web_location=333.788&w_rid=d76ea8eaa47b3c9f0c4a910a8b9b66f5&wts=1700358732' \
- --compressed
-```
+| 项 | 类型 | 内容 | 备注 |
+|-----|-----|---------|-----|
+| 0 | obj | 分段要点1 | |
+| n | obj | 分段要点(n+1) | |
+| …… | obj | …… | …… |
-
-查看Python Demo
+`part_outline`数组中的对象:
-```python
-import requests
+| 字段 | 类型 | 内容 | 备注 |
+|-----------|-----|-------|----|
+| timestamp | num | 要点起始时间 | 单位为秒 |
+| content | str | 小结内容 | 其中一个分段的要点 |
-headers = {
- # 需要附带上Cookie等信息
- 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36',
-}
+**示例:**
-params = {
- 'bvid': 'BV1d94y1375U',
- 'cid': '1334003541',
- 'up_mid': '407275913',
- 'w_rid': '5cafe844afcb813ecd129f08e6ea73b5', # 参见Wbi签名章节
- 'wts': '1700579155',
-}
+得到视频`BV1L94y1H7CV`(`cid=1335073288`)的摘要
-response = requests.get(
- 'https://api.bilibili.com/x/web-interface/view/conclusion/get',
- params=params,
- headers=headers,
-)
+```bash
+curl -G 'https://api.bilibili.com/x/web-interface/view/conclusion/get' \
+ --data-urlencode 'bvid=BV1L94y1H7CV' \
+ --data-urlencode 'cid=1335073288' \
+ --data-urlencode 'up_mid=297242063' \
+ --data-urlencode 'wts=1701546363' \
+ --data-urlencode 'w_rid=1073871926b3ccd99bd790f0162af634'
```
-
-
-有摘要示例:
-
查看响应示例:
@@ -169,50 +149,25 @@ response = requests.get(
},
"stid": "5117037934391059183",
"status": 0,
- "like_num": 3,
- "dislike_num": 0
+ "like_num": 6,
+ "dislike_num": 2
}
}
```
-无摘要示例:
-
-
-查看响应示例:
-
-```json
-{
- "code": 0,
- "message": "0",
- "ttl": 1,
- "data": {
- "code": 1,
- "model_result": {
- "result_type": 0,
- "summary": "",
- "outline": None
- },
- "stid": "0",
- "status": 0,
- "like_num": 0,
- "dislike_num": 0
- }
-}
-```
+## 点赞&点踩摘要
-
+> https://api.bilibili.com/x/web-interface/view/conclusion/set
-## 点赞&点踩摘要(对应上面link_num&dislike_num)
+*请求方式:POST*
认证方式:Cookie(SESSDATA)
-限制游客访问,需要登录
-
鉴权方式:[Wbi 签名](../misc/sign/wbi.md)
-***\*url参数:\****
+**url参数:**
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
|-------|-----|--------|-----|----------------------------------|
@@ -221,13 +176,14 @@ response = requests.get(
**正文参数( application/x-www-form-urlencoded ):**
-| 参数名 | 类型 | 内容 | 必要性 | 备注 |
+| 参数名 | 类型 | 内容 | 必要性 | 备注 |
|------------|-----|----------------------|-----|-----------------------------|
-| bvid | str | 稿件bvid | 必要 | |
-| cid | num | 稿件cid | 必要 | |
-| up_mid | num | UP主mid | 必要 | |
-| stid | num | 摘要id | 必要 | |
-| like_state | num | 喜欢状态 | 必要 | 1: 点赞
2: 取消
3: 点踩 |
+| aid | num | 稿件 avid | 必要(可选) | avid与bvid任选一个 |
+| bvid | str | 稿件 bvid | 必要(可选) | avid与bvid任选一个 |
+| cid | num | 稿件 cid | 必要 | |
+| up_mid | num | UP主 mid | 非必要 | |
+| stid | num | 摘要 id | 必要 | |
+| like_state | num | 执行操作 | 必要 | 1: 点赞
2: 取消点赞
3: 点踩
4: 取消点踩 |
| csrf | str | CSRF Token(位于cookie) | 必要 | |
**json回复:**
@@ -236,57 +192,25 @@ response = requests.get(
| 字段 | 类型 | 内容 | 备注 |
|---------|-----|------|------------------------------------------|
-| code | num | 返回值 | 0: 成功
-400: 请求错误
65006: 已赞/踩过 |
+| code | num | 返回值 | 0: 成功
-400: 请求错误
65002:origin id 错误
65004:取消赞失败 未点赞过
65005:取消踩失败 未点踩过
65006: 已赞过
65007:已踩过 |
| message | str | 错误信息 | 默认为0 |
| ttl | num | 1 | |
**示例:**
-为视频`BV1L94y1H7CV`的摘要`5117037934391059183`点赞
+为视频`BV1L94y1H7CV`(`cid=1335073288`)的摘要点赞
```shell
curl 'https://api.bilibili.com/x/web-interface/view/conclusion/set?w_rid=edb471fc926646ef3889a80488166b66&wts=1700358953' \
- --data-raw 'bvid=BV1L94y1H7CV&cid=1335073288&up_mid=297242063&stid=5117037934391059183&like_state=1&csrf=522xxxxxxxxxxxxxxx6f4' \
- --compressed
-```
-
-
-查看Python Demo
-
-```python
-import requests
-
-headers = {
- # 需要附带上Cookie等信息
- 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36',
-}
-
-params = {
- 'w_rid': 'edb471fc926646ef3889a80488166b66',
- 'wts': '1700358953',
-}
-
-data = {
- 'bvid': 'BV1L94y1H7CV',
- 'cid': '1335073288',
- 'up_mid': '297242063',
- 'stid': '5117037934391059183',
- 'like_state': '1',
- 'csrf': '522xxxxxxxxxxxxxxx6f4',
-}
-
-response = requests.post(
- 'https://api.bilibili.com/x/web-interface/view/conclusion/set',
- params=params,
- data=data
-)
-
+ --data-urlencode 'bvid=BV1L94y1H7CV' \
+ --data-urlencode 'cid=1335073288' \
+ --data-urlencode 'up_mid=297242063' \
+ --data-urlencode 'stid=5117037934391059183' \
+ --data-urlencode '&like_state=1' \
+ --data-urlencode 'csrf=xxx' \
+ -b 'SESSDATA=xxx'
```
-
-
-
-
查看响应示例: