添加笔记相关API (#100)

* note开始编写

* Update info.md

* Update info.md

* 更改文件名并且完善

* Delete a.json

* 更新并修改【提交笔记】及【删除笔记】

Co-authored-by: SocialSisterYi <45892418+SocialSisterYi@users.noreply.github.com>
This commit is contained in:
矿井小帕的血小板 2020-11-22 15:31:27 +08:00 committed by GitHub
parent 3d66604055
commit a92ffe2b67
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 207 additions and 1 deletions

View File

@ -82,7 +82,11 @@ PS所有http协议地址均可使用https文档中为了统一写作`http`
- 高级弹幕
- 屏蔽管理
- 智能防挡弹幕
- [弹幕个人配置修改](danmaku/config.md)√
- [弹幕个人配置修改](danmaku/config.md)
- [视频笔记](note)×
- 笔记列表
- 笔记详细信息
- [笔记操作](note/action.md)√
- [专栏](article)
- 分区
- [基本信息](article/info.md)×

131
note/action.md Normal file
View File

@ -0,0 +1,131 @@
# 笔记操作
- [保存视频笔记](#保存视频笔记)
- [删除视频笔记](#删除视频笔记)
---
## 保存视频笔记
> http://api.bilibili.com/x/note/add
*请求方式POST*
认证方式CookieSESSDATA
**正文参数( application/x-www-form-urlencoded **
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
| ------- | ---- | ------------------------ | ------ | ------------------------------------------------------------ |
| aid | num | 目标稿件avID | 必要 | |
| note_id | num | 笔记ID | 非必要 | 创建时无需此项 |
| title | str | 笔记标题 | 必要 | |
| summary | str | 笔记预览文本 | 必要 | |
| content | str | 笔记正文json序列 | 必要 | 格式见[附表](readme.md#附表-笔记正文序列格式) |
| tags | str | | 非必要 | 作用尚不明确 |
| cls | num | 1 | 非必要 | 作用尚不明确 |
| from | str | 提交类型 | 非必要 | auto自动提交<br />save手动提交<br />close关闭时自动提交 |
| csrf | str | CSRF Token位于cookie | 必要 | |
**json回复**
根对象:
| 字段 | 类型 | 内容 | 备注 |
| ------- | ---- | -------- | ------------------------------------------------------------ |
| code | num | 返回值 | 0成功 <br />-101账号未登录<br />-111csrf校验失败<br />-400请求错误<br />-79508该稿件已存在笔记无法新增 |
| message | str | 错误信息 | 默认为0 |
| ttl | num | 1 | |
| data | obj | 数据本体 | |
`data`对象:
| 字段 | 类型 | 内容 | 备注 |
| ------- | ---- | ------------ | ---- |
| note_id | num | 笔记ID | |
**示例:**
保存内容为加粗的STRONG的笔记`3809605586518023`于`av970322090`
```shell
curl 'http://api.bilibili.com/x/note/add' \
--data-urlencode 'aid=970322090' \
--data-urlencode 'note_id=3809605586518023'
--data-urlencode 'title=周刊哔哩哔哩排行榜#543'
--data-urlencode 'summary=STRONG'
--data-urlencode 'content=[{"attributes":{"bold":true},"insert":"STRONG"},{"insert":"\n"}]'
--data-urlencode 'tags='
--data-urlencode 'cls=1'
--data-urlencode 'from=save'
--data-urlencode 'csrf=xxx'
-b 'SESSDATA=xxx'
```
<details>
<summary>查看响应示例:</summary>
```json
{
"code": 0,
"message": "0",
"ttl": 1,
"data": {
"note_id": 3809605586518023
}
}
```
</details>
## 删除视频笔记
> http://api.bilibili.com/x/note/del
*请求方式POST*
认证方式CookieSESSDATA
**正文参数( application/x-www-form-urlencoded **
| 参数名 | 类型 | 内容 | 必要性 | 备注 |
| ------- | ---- | ------------------------ | ------ | ---- |
| aid | num | 目标稿件avID | 必要 | |
| note_id | num | 笔记ID | 非必要 | |
| csrf | str | CSRF Token位于cookie | 必要 | |
**json回复**
根对象:
| 字段 | 类型 | 内容 | 备注 |
| ------- | ---- | -------- | ------------------------------------------------------------ |
| code | num | 返回值 | 0成功 <br />-101账号未登录<br />-111csrf校验失败<br />-400请求错误 |
| message | str | 错误信息 | 默认为0 |
| ttl | num | 1 | |
**示例:**
删除稿件`av457253380`下的笔记`4075968478576647`
```shell
curl 'http://api.bilibili.com/x/note/add' \
--data-urlencode 'aid=457253380' \
--data-urlencode 'note_id=4075968478576647' \
--data-urlencode 'csrf=xxx'
-b 'SESSDATA=xxx'
```
<details>
<summary>查看响应示例:</summary>
```json
{
"code": 0,
"message": "0",
"ttl": 1
}
```
</details>

71
note/readme.md Normal file
View File

@ -0,0 +1,71 @@
# 视频笔记
2020-11-16 B站推出了测试版的功能——"视频笔记"与视频稿件关联为富文本模式可供记录观看视频时的感悟以及视频中的重要内容目前只可在web端操作
---
继续查看:
- 笔记列表
- 笔记详细信息
- [笔记操作](action.md)√
---
## 附表-笔记正文序列格式
根数组:
| 项 | 类型 | 内容 | 备注 |
| ---- | ---- | ------------- | ---- |
| 0 | obj | 第1个元素 | |
| n | obj | 第(n+1)个元素 | |
| …… | obj | …… | …… |
根数组中的对象:
| 字段 | 类型 | 内容 | 备注 |
| ---------- | ---- | ------------ | ------------------- |
| attributes | obj | 元素属性 | 无属性无此项 |
| insert | str | 元素内容 | 为跳转/图片时无此项 |
| insert | obj | 元素跳转信息 | 非跳转/图片时无此项 |
对象中的`attributes`对象:
| 字段 | 类型 | 内容 | 备注 |
| ---------- | ---- | ---------- | ------------------------------ |
| bold | bool | 是否加粗 | |
| strike | bool | 是否删除线 | |
| underline | bool | 是否下划线 | |
| background | str | 背景颜色 | |
| color | str | 文字颜色 | |
| list | str | 列表属性 | ordered有序列表/bullet无序列表 |
| size | str | 文字字号 | |
对象中的`insert`对象:
| 字段 | 类型 | 内容 | 备注 |
| ----------- | ---- | -------- | ------ |
| tag | obj | 跳转标签 | 二选一 |
| imageUpload | obj | 笔记图片 | 二选一 |
`insert`中的`tag`对象:
| 字段 | 类型 | 内容 | 备注 |
| -------- | ---- | ----------------- | ------------ |
| cid | num | 视频cid | |
| status | num | 0 | 作用尚不明确 |
| index | num | 在稿件中的分P索引 | |
| seconds | num | 视频进度 | |
| cidCount | num | 稿件总分P数 | |
| key | str | 标签创建时间戳 | |
| title | str | output | 作用尚不明确 |
`insert`中的`imageUpload`对象:
| 字段 | 类型 | 内容 | 备注 |
| ------ | ---- | ---------- | ------------ |
| url | str | 图片链接 | |
| status | str | done | 作用尚不明确 |
| width | num | 图片宽度-2 | |