diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 0000000..b5cfe71 --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1,12 @@ +# These are supported funding model platforms + +github: [SocialSisterYi] +patreon: # Replace with a single Patreon username +open_collective: # Replace with a single Open Collective username +ko_fi: # Replace with a single Ko-fi username +tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel +community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry +liberapay: # Replace with a single Liberapay username +issuehunt: # Replace with a single IssueHunt username +otechie: # Replace with a single Otechie username +custom: https://afdian.com/@ShakaiAneE diff --git a/.github/ISSUE_TEMPLATE/1-add-request.yml b/.github/ISSUE_TEMPLATE/1-add-request.yml new file mode 100644 index 0000000..d632a1a --- /dev/null +++ b/.github/ISSUE_TEMPLATE/1-add-request.yml @@ -0,0 +1,56 @@ +name: "新增请求" +description: "请求添加文档中未收录的 API 定义" +title: "[新增请求]
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+OR Aifadian:[https://afdian.com/@ShakaiAneE](https://afdian.com/@ShakaiAneE)
+
+## 🔗相关项目推荐
+
+### 库及文档
+
+- [jingyuexing/bilibiliAPI](https://github.com/jingyuexing/bilibiliAPI)
+- [fython/BilibiliAPIDocs](https://github.com/fython/BilibiliAPIDocs)
+- [czp3009/bilibili-api](https://github.com/czp3009/bilibili-api)
+- [Vespa314/bilibili-api](https://github.com/Vespa314/bilibili-api)
+- [Pengfei00/bili-utils](https://github.com/Pengfei00/bili-utils): bilibili 工具箱
+- [lovelyyoshino/Bilibili-Live-API](https://github.com/lovelyyoshino/Bilibili-Live-API): Bilibili 直播/番剧 API 文档
+- [flaribbit/bilibili-manga-spider](https://github.com/flaribbit/bilibili-manga-spider): Bilibili 漫画爬虫
+- [simon300000/bili-api](https://github.com/simon300000/bili-api): Bilibili Node.js API
+- [iyear/biligo](https://github.com/iyear/biligo): Bilibili API SDK in Golang
+- [bilibili-openplatform/demo](https://github.com/bilibili-openplatform/demo): 哔哩哔哩开放平台示例代码库
+- [ddiu8081/blive-message-listener](https://github.com/ddiu8081/blive-message-listener): Bilibili-live danmu listener with type. Bilibili 直播间弹幕监听库,支持类型输出。
+- [Nemo2011/bilibili-api](https://github.com/Nemo2011/bilibili-api): 哔哩哔哩常用API调用。支持视频、番剧、用户、频道、音频等功能。工具齐全。
+- [CuteReimu/bilibili](https://github.com/CuteReimu/bilibili): 哔哩哔哩API的Go版本SDK
+
+### 成品
+
+- [NullPointerException/AnimePipe](https://codeberg.org/NullPointerException/AnimePipe): 功能完善的Android流媒体综合客户端,支持Bilibili, Youtube, NicoNico
+- [3Shain/Comen](https://github.com/3Shain/Comen): 基于h5的B站直播弹幕姬
+- [AncientLysine/BiliLocal](https://github.com/AncientLysine/BiliLocal): 本地弹幕播放器
+- [zyzsdy/biliroku](https://github.com/zyzsdy/biliroku): bilibili 生放送(直播)录制
+- [otakustay/danmaku-to-ass](https://github.com/otakustay/danmaku-to-ass): A站B站弹幕转字幕文件
+- [bilibili-helper/bilibili-helper-o](https://github.com/bilibili-helper/bilibili-helper-o): 哔哩哔哩 (bilibili.com) 辅助工具,可以下载视频,查询弹幕发送人以及一些十分实用的直播区功能。
+- [apachecn/CDNDrive](https://github.com/apachecn/CDNDrive): 基于B站相簿上传的文件分块索引存储器
+- [Hsury/BiliDrive](https://github.com/Hsury/BiliDrive): 基于B站相簿上传的文件分块索引存储器
+- [Tsuk1ko/bilibili-live-chat](https://github.com/Tsuk1ko/bilibili-live-chat): 无后端的仿 YouTube Live Chat 风格的简易 Bilibili 弹幕姬
+- [ironmanic/crawler_target_users_good](https://github.com/ironmanic/crawler_target_users_good): 搜索bilibili特定视频,为评论 点赞,关注,私信,一体化服务
+- [dd-center/DDatElectron](https://github.com/dd-center/DDatElectron): DD@Home 分布式项目, 桌面客户端
+- [dd-center/vtbs.moe](https://github.com/dd-center/vtbs.moe): B站VTB数据中心
+- [the1812/Bilibili-Evolved](https://github.com/the1812/Bilibili-Evolved): 强大的哔哩哔哩增强脚本: 下载视频、音乐、封面、弹幕 / 简化直播间、评论区、首页 / 自定义顶栏、删除广告、夜间模式 / 触屏设备支持
+- [xlzy520/bili-short-url](https://github.com/xlzy520/bili-short-url): 哔哩哔哩短链生成器
+- [zjkwdy/bili_app_splash](https://github.com/zjkwdy/bili_app_splash): B站壁纸娘和开屏图自动下载,每天使用Actions自动同步
+- [Jannchie/BiliOB](https://github.com/Jannchie/BiliOB): BiliOB观测者是一个观测B站UP主及视频数据变化,并予以分析的Web应用程序
+- [biliob233/biliob233.github.io](https://github.com/biliob233/biliob233.github.io): ~~无可奉告~~
+- [biliup/biliup](https://github.com/biliup/biliup): 全自动录播、投稿工具,支持录制直播弹幕,也支持Youtube、twitch直播回放列表自动搬运到B站
+- [ddiu8081/bilicli](https://github.com/ddiu8081/bilicli): Bilibili-live danmu dashboard in your terminal.
+- [MotooriKashin/Bilibili-Old](https://github.com/MotooriKashin/Bilibili-Old): 恢复旧版Bilibili页面,为了那些念旧的人。
+- [SocialSisterYi/bcut-asr](https://github.com/SocialSisterYi/bcut-asr): 使用必剪API的语音字幕识别
+- [CzJam/Bili_Realtime_Data](https://github.com/CzJam/Bili_Realtime_Data): Bilibili粉丝与视频实时数据统计
+- [kingwingfly/fav](https://github.com/kingwingfly/fav): 自动同步bili收藏夹、合集视频到本地的CLI工具(Rust实现,并提供一个文档测试完善的Rust风格的用于构建有状态爬虫的核心库)
+- [linyuye/Bilibili_crawler](https://github.com/linyuye/Bilibili_crawler): 基于bilibili懒加载api爬取b站动态,视频等评论区
+- [ouzexi/bilibili-hot-tags](https://github.com/ouzexi/bilibili-hot-tags): 一个B站热门视频标签检索统计小工具
+- [SpenserCai/rust-video-downloader](https://github.com/SpenserCai/rust-video-downloader): Rust实现的高性能跨平台视频下载器(目前支持Bilibili),基本覆盖了BBDown的所有功能。
+
+### 其他
+
+- [kuresaru/geetest-validator](https://github.com/kuresaru/geetest-validator): GeeTest 调试器
+- [bloomrpc/bloomrpc](https://github.com/bloomrpc/bloomrpc): GUI Client for GRPC Services
+- [grpc/grpc](https://github.com/grpc/grpc): The C based gRPC (C++, Python, Ruby, Objective-C, PHP, C#)
+- [glideapps/quicktype](https://github.com/glideapps/quicktype): quicktype generates strongly-typed models and serializers from JSON, JSON Schema, TypeScript, and GraphQL queries, making it a breeze to work with JSON type-safely in many programming languages. 一键生成多种语言的JSON反序列化所需类,以便于快速反序列化,有网页版
+- [SessionHu/json-apidoc-gen](https://github.com/SessionHu/json-apidoc-gen): Simple CLI tool for generating BAC document template
diff --git a/assets/img/2233login.png b/assets/img/2233login.png
new file mode 100644
index 0000000..3d9ff56
Binary files /dev/null and b/assets/img/2233login.png differ
diff --git a/assets/img/activit.svg b/assets/img/activit.svg
new file mode 100644
index 0000000..b210f77
--- /dev/null
+++ b/assets/img/activit.svg
@@ -0,0 +1,3 @@
+
\ No newline at end of file
diff --git a/assets/img/add.svg b/assets/img/add.svg
new file mode 100644
index 0000000..ecdea95
--- /dev/null
+++ b/assets/img/add.svg
@@ -0,0 +1,20 @@
+
+
+
diff --git a/assets/img/aiSummary.svg b/assets/img/aiSummary.svg
new file mode 100644
index 0000000..efa4420
--- /dev/null
+++ b/assets/img/aiSummary.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/img/akari.jpg b/assets/img/akari.jpg
new file mode 100644
index 0000000..5e5ea0b
Binary files /dev/null and b/assets/img/akari.jpg differ
diff --git a/assets/img/ban.png b/assets/img/ban.png
new file mode 100644
index 0000000..a51f5b9
Binary files /dev/null and b/assets/img/ban.png differ
diff --git a/assets/img/battery-100.png b/assets/img/battery-100.png
new file mode 100644
index 0000000..4336d56
Binary files /dev/null and b/assets/img/battery-100.png differ
diff --git a/assets/img/bilibili.svg b/assets/img/bilibili.svg
new file mode 100644
index 0000000..e5cd8ee
--- /dev/null
+++ b/assets/img/bilibili.svg
@@ -0,0 +1,44 @@
+
diff --git a/assets/img/blackroom.svg b/assets/img/blackroom.svg
new file mode 100644
index 0000000..10c801d
--- /dev/null
+++ b/assets/img/blackroom.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/img/channel.svg b/assets/img/channel.svg
new file mode 100644
index 0000000..308e4df
--- /dev/null
+++ b/assets/img/channel.svg
@@ -0,0 +1,6 @@
+
diff --git a/assets/img/class.svg b/assets/img/class.svg
new file mode 100644
index 0000000..51797d1
--- /dev/null
+++ b/assets/img/class.svg
@@ -0,0 +1,7 @@
+
\ No newline at end of file
diff --git a/assets/img/coin.svg b/assets/img/coin.svg
new file mode 100644
index 0000000..d58a86e
--- /dev/null
+++ b/assets/img/coin.svg
@@ -0,0 +1,7 @@
+
diff --git a/assets/img/collect.svg b/assets/img/collect.svg
new file mode 100644
index 0000000..b382480
--- /dev/null
+++ b/assets/img/collect.svg
@@ -0,0 +1,9 @@
+
\ No newline at end of file
diff --git a/assets/img/comment.svg b/assets/img/comment.svg
new file mode 100644
index 0000000..f5cf6b1
--- /dev/null
+++ b/assets/img/comment.svg
@@ -0,0 +1,7 @@
+
\ No newline at end of file
diff --git a/assets/img/delete.svg b/assets/img/delete.svg
new file mode 100644
index 0000000..6901d1a
--- /dev/null
+++ b/assets/img/delete.svg
@@ -0,0 +1,9 @@
+
\ No newline at end of file
diff --git a/assets/img/download.svg b/assets/img/download.svg
new file mode 100644
index 0000000..dca94f2
--- /dev/null
+++ b/assets/img/download.svg
@@ -0,0 +1,7 @@
+
diff --git a/assets/img/fav.svg b/assets/img/fav.svg
new file mode 100644
index 0000000..eea2122
--- /dev/null
+++ b/assets/img/fav.svg
@@ -0,0 +1,6 @@
+
diff --git a/assets/img/follow.svg b/assets/img/follow.svg
new file mode 100644
index 0000000..900076b
--- /dev/null
+++ b/assets/img/follow.svg
@@ -0,0 +1,23 @@
+
+
+
diff --git a/assets/img/history.png b/assets/img/history.png
new file mode 100644
index 0000000..dc42b04
Binary files /dev/null and b/assets/img/history.png differ
diff --git a/assets/img/home.svg b/assets/img/home.svg
new file mode 100644
index 0000000..21b5eb9
--- /dev/null
+++ b/assets/img/home.svg
@@ -0,0 +1,6 @@
+
\ No newline at end of file
diff --git a/assets/img/like.svg b/assets/img/like.svg
new file mode 100644
index 0000000..cfc8cb1
--- /dev/null
+++ b/assets/img/like.svg
@@ -0,0 +1,5 @@
+
diff --git a/assets/img/live.svg b/assets/img/live.svg
new file mode 100644
index 0000000..4bd4e55
--- /dev/null
+++ b/assets/img/live.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/img/loadTV.gif b/assets/img/loadTV.gif
new file mode 100644
index 0000000..33ebcd8
Binary files /dev/null and b/assets/img/loadTV.gif differ
diff --git a/assets/img/logo.png b/assets/img/logo.png
new file mode 100644
index 0000000..57fedbd
Binary files /dev/null and b/assets/img/logo.png differ
diff --git a/assets/img/logo2.jpg b/assets/img/logo2.jpg
new file mode 100644
index 0000000..199eefc
Binary files /dev/null and b/assets/img/logo2.jpg differ
diff --git a/assets/img/musicplus.svg b/assets/img/musicplus.svg
new file mode 100644
index 0000000..a32c24e
--- /dev/null
+++ b/assets/img/musicplus.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/img/ploading.gif b/assets/img/ploading.gif
new file mode 100644
index 0000000..1a8c97d
Binary files /dev/null and b/assets/img/ploading.gif differ
diff --git a/assets/img/ranking.svg b/assets/img/ranking.svg
new file mode 100644
index 0000000..c827ff1
--- /dev/null
+++ b/assets/img/ranking.svg
@@ -0,0 +1,4 @@
+
diff --git a/assets/img/read.svg b/assets/img/read.svg
new file mode 100644
index 0000000..8d16156
--- /dev/null
+++ b/assets/img/read.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/img/relation.svg b/assets/img/relation.svg
new file mode 100644
index 0000000..a9e42ec
--- /dev/null
+++ b/assets/img/relation.svg
@@ -0,0 +1,10 @@
+
\ No newline at end of file
diff --git a/assets/img/share.svg b/assets/img/share.svg
new file mode 100644
index 0000000..ca3b8fc
--- /dev/null
+++ b/assets/img/share.svg
@@ -0,0 +1,5 @@
+
diff --git a/assets/img/sponsorQR.jpg b/assets/img/sponsorQR.jpg
new file mode 100644
index 0000000..9178ffc
Binary files /dev/null and b/assets/img/sponsorQR.jpg differ
diff --git a/assets/img/sub.svg b/assets/img/sub.svg
new file mode 100644
index 0000000..907fce8
--- /dev/null
+++ b/assets/img/sub.svg
@@ -0,0 +1,5 @@
+
\ No newline at end of file
diff --git a/assets/img/tebietuijian.svg b/assets/img/tebietuijian.svg
new file mode 100644
index 0000000..4623fa6
--- /dev/null
+++ b/assets/img/tebietuijian.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/img/topic.svg b/assets/img/topic.svg
new file mode 100644
index 0000000..b26e7a0
--- /dev/null
+++ b/assets/img/topic.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/img/toview.png b/assets/img/toview.png
new file mode 100644
index 0000000..cd1e0ae
Binary files /dev/null and b/assets/img/toview.png differ
diff --git a/assets/img/tuiguang.svg b/assets/img/tuiguang.svg
new file mode 100644
index 0000000..52aac0e
--- /dev/null
+++ b/assets/img/tuiguang.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/img/video_up.svg b/assets/img/video_up.svg
new file mode 100644
index 0000000..e8987f5
--- /dev/null
+++ b/assets/img/video_up.svg
@@ -0,0 +1,6 @@
+
diff --git a/assets/zone_icon/ad.svg b/assets/zone_icon/ad.svg
new file mode 100644
index 0000000..3004bbf
--- /dev/null
+++ b/assets/zone_icon/ad.svg
@@ -0,0 +1,14 @@
+
\ No newline at end of file
diff --git a/assets/zone_icon/animal.svg b/assets/zone_icon/animal.svg
new file mode 100644
index 0000000..4f7708d
--- /dev/null
+++ b/assets/zone_icon/animal.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/assets/zone_icon/anime.svg b/assets/zone_icon/anime.svg
new file mode 100644
index 0000000..fd797d3
--- /dev/null
+++ b/assets/zone_icon/anime.svg
@@ -0,0 +1,16 @@
+
\ No newline at end of file
diff --git a/assets/zone_icon/car.svg b/assets/zone_icon/car.svg
new file mode 100644
index 0000000..6d30f0a
--- /dev/null
+++ b/assets/zone_icon/car.svg
@@ -0,0 +1,20 @@
+
\ No newline at end of file
diff --git a/assets/zone_icon/cinephile.svg b/assets/zone_icon/cinephile.svg
new file mode 100644
index 0000000..cad39f4
--- /dev/null
+++ b/assets/zone_icon/cinephile.svg
@@ -0,0 +1,14 @@
+
\ No newline at end of file
diff --git a/assets/zone_icon/comic.svg b/assets/zone_icon/comic.svg
new file mode 100644
index 0000000..bb78da2
--- /dev/null
+++ b/assets/zone_icon/comic.svg
@@ -0,0 +1,20 @@
+
\ No newline at end of file
diff --git a/assets/zone_icon/dance.svg b/assets/zone_icon/dance.svg
new file mode 100644
index 0000000..87a5ad1
--- /dev/null
+++ b/assets/zone_icon/dance.svg
@@ -0,0 +1,10 @@
+
\ No newline at end of file
diff --git a/assets/zone_icon/digital.svg b/assets/zone_icon/digital.svg
new file mode 100644
index 0000000..56ea8f9
--- /dev/null
+++ b/assets/zone_icon/digital.svg
@@ -0,0 +1,13 @@
+
\ No newline at end of file
diff --git a/assets/zone_icon/documentary.svg b/assets/zone_icon/documentary.svg
new file mode 100644
index 0000000..fcaf707
--- /dev/null
+++ b/assets/zone_icon/documentary.svg
@@ -0,0 +1,31 @@
+
\ No newline at end of file
diff --git a/assets/zone_icon/douga.svg b/assets/zone_icon/douga.svg
new file mode 100644
index 0000000..5cf324c
--- /dev/null
+++ b/assets/zone_icon/douga.svg
@@ -0,0 +1,14 @@
+
\ No newline at end of file
diff --git a/assets/zone_icon/ent.svg b/assets/zone_icon/ent.svg
new file mode 100644
index 0000000..d938420
--- /dev/null
+++ b/assets/zone_icon/ent.svg
@@ -0,0 +1,17 @@
+
\ No newline at end of file
diff --git a/assets/zone_icon/fashion.svg b/assets/zone_icon/fashion.svg
new file mode 100644
index 0000000..cfb6621
--- /dev/null
+++ b/assets/zone_icon/fashion.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/assets/zone_icon/food.svg b/assets/zone_icon/food.svg
new file mode 100644
index 0000000..e554eb5
--- /dev/null
+++ b/assets/zone_icon/food.svg
@@ -0,0 +1,32 @@
+
\ No newline at end of file
diff --git a/assets/zone_icon/game.svg b/assets/zone_icon/game.svg
new file mode 100644
index 0000000..59a2188
--- /dev/null
+++ b/assets/zone_icon/game.svg
@@ -0,0 +1,9 @@
+
\ No newline at end of file
diff --git a/assets/zone_icon/guochuang.svg b/assets/zone_icon/guochuang.svg
new file mode 100644
index 0000000..a10c3e9
--- /dev/null
+++ b/assets/zone_icon/guochuang.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/assets/zone_icon/information.svg b/assets/zone_icon/information.svg
new file mode 100644
index 0000000..c33d838
--- /dev/null
+++ b/assets/zone_icon/information.svg
@@ -0,0 +1,17 @@
+
\ No newline at end of file
diff --git a/assets/zone_icon/kichiku.svg b/assets/zone_icon/kichiku.svg
new file mode 100644
index 0000000..2d74f85
--- /dev/null
+++ b/assets/zone_icon/kichiku.svg
@@ -0,0 +1,16 @@
+
\ No newline at end of file
diff --git a/assets/zone_icon/knowledge.svg b/assets/zone_icon/knowledge.svg
new file mode 100644
index 0000000..8ede0d7
--- /dev/null
+++ b/assets/zone_icon/knowledge.svg
@@ -0,0 +1,18 @@
+
\ No newline at end of file
diff --git a/assets/zone_icon/life.svg b/assets/zone_icon/life.svg
new file mode 100644
index 0000000..ad03a79
--- /dev/null
+++ b/assets/zone_icon/life.svg
@@ -0,0 +1,8 @@
+
\ No newline at end of file
diff --git a/assets/zone_icon/movie.svg b/assets/zone_icon/movie.svg
new file mode 100644
index 0000000..5f691a4
--- /dev/null
+++ b/assets/zone_icon/movie.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/assets/zone_icon/music.svg b/assets/zone_icon/music.svg
new file mode 100644
index 0000000..408c93c
--- /dev/null
+++ b/assets/zone_icon/music.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/assets/zone_icon/sports.svg b/assets/zone_icon/sports.svg
new file mode 100644
index 0000000..bd4c97e
--- /dev/null
+++ b/assets/zone_icon/sports.svg
@@ -0,0 +1,8 @@
+
\ No newline at end of file
diff --git a/assets/zone_icon/tech.svg b/assets/zone_icon/tech.svg
new file mode 100644
index 0000000..4c3795b
--- /dev/null
+++ b/assets/zone_icon/tech.svg
@@ -0,0 +1,12 @@
+
\ No newline at end of file
diff --git a/assets/zone_icon/teleplay.svg b/assets/zone_icon/teleplay.svg
new file mode 100644
index 0000000..a6a39af
--- /dev/null
+++ b/assets/zone_icon/teleplay.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/ai.svg b/assets/zone_v2_icon/ai.svg
new file mode 100644
index 0000000..797fd6f
--- /dev/null
+++ b/assets/zone_v2_icon/ai.svg
@@ -0,0 +1,17 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/animal.svg b/assets/zone_v2_icon/animal.svg
new file mode 100644
index 0000000..74cb01e
--- /dev/null
+++ b/assets/zone_v2_icon/animal.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/car.svg b/assets/zone_v2_icon/car.svg
new file mode 100644
index 0000000..9dd5705
--- /dev/null
+++ b/assets/zone_v2_icon/car.svg
@@ -0,0 +1,23 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/cinephile.svg b/assets/zone_v2_icon/cinephile.svg
new file mode 100644
index 0000000..de746dc
--- /dev/null
+++ b/assets/zone_v2_icon/cinephile.svg
@@ -0,0 +1,32 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/dance.svg b/assets/zone_v2_icon/dance.svg
new file mode 100644
index 0000000..1082252
--- /dev/null
+++ b/assets/zone_v2_icon/dance.svg
@@ -0,0 +1,23 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/douga.svg b/assets/zone_v2_icon/douga.svg
new file mode 100644
index 0000000..00a4f8c
--- /dev/null
+++ b/assets/zone_v2_icon/douga.svg
@@ -0,0 +1,26 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/emotion.svg b/assets/zone_v2_icon/emotion.svg
new file mode 100644
index 0000000..8ed2de6
--- /dev/null
+++ b/assets/zone_v2_icon/emotion.svg
@@ -0,0 +1,8 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/entertainment.svg b/assets/zone_v2_icon/entertainment.svg
new file mode 100644
index 0000000..b69d02f
--- /dev/null
+++ b/assets/zone_v2_icon/entertainment.svg
@@ -0,0 +1,20 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/fashion.svg b/assets/zone_v2_icon/fashion.svg
new file mode 100644
index 0000000..5572bef
--- /dev/null
+++ b/assets/zone_v2_icon/fashion.svg
@@ -0,0 +1,14 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/food.svg b/assets/zone_v2_icon/food.svg
new file mode 100644
index 0000000..b9ada08
--- /dev/null
+++ b/assets/zone_v2_icon/food.svg
@@ -0,0 +1,23 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/game.svg b/assets/zone_v2_icon/game.svg
new file mode 100644
index 0000000..7fe5842
--- /dev/null
+++ b/assets/zone_v2_icon/game.svg
@@ -0,0 +1,14 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/gym.svg b/assets/zone_v2_icon/gym.svg
new file mode 100644
index 0000000..4b1e3a8
--- /dev/null
+++ b/assets/zone_v2_icon/gym.svg
@@ -0,0 +1,17 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/handmake.svg b/assets/zone_v2_icon/handmake.svg
new file mode 100644
index 0000000..96f3bcc
--- /dev/null
+++ b/assets/zone_v2_icon/handmake.svg
@@ -0,0 +1,23 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/health.svg b/assets/zone_v2_icon/health.svg
new file mode 100644
index 0000000..ee172e4
--- /dev/null
+++ b/assets/zone_v2_icon/health.svg
@@ -0,0 +1,11 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/home.svg b/assets/zone_v2_icon/home.svg
new file mode 100644
index 0000000..066b5dd
--- /dev/null
+++ b/assets/zone_v2_icon/home.svg
@@ -0,0 +1,26 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/information.svg b/assets/zone_v2_icon/information.svg
new file mode 100644
index 0000000..68a2917
--- /dev/null
+++ b/assets/zone_v2_icon/information.svg
@@ -0,0 +1,20 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/kichiku.svg b/assets/zone_v2_icon/kichiku.svg
new file mode 100644
index 0000000..a02252b
--- /dev/null
+++ b/assets/zone_v2_icon/kichiku.svg
@@ -0,0 +1,20 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/knowledge.svg b/assets/zone_v2_icon/knowledge.svg
new file mode 100644
index 0000000..154fe65
--- /dev/null
+++ b/assets/zone_v2_icon/knowledge.svg
@@ -0,0 +1,17 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/life_experience.svg b/assets/zone_v2_icon/life_experience.svg
new file mode 100644
index 0000000..2ef38e2
--- /dev/null
+++ b/assets/zone_v2_icon/life_experience.svg
@@ -0,0 +1,8 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/life_joy.svg b/assets/zone_v2_icon/life_joy.svg
new file mode 100644
index 0000000..1b31b60
--- /dev/null
+++ b/assets/zone_v2_icon/life_joy.svg
@@ -0,0 +1,14 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/music.svg b/assets/zone_v2_icon/music.svg
new file mode 100644
index 0000000..10c5f58
--- /dev/null
+++ b/assets/zone_v2_icon/music.svg
@@ -0,0 +1,17 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/outdoors.svg b/assets/zone_v2_icon/outdoors.svg
new file mode 100644
index 0000000..0af234d
--- /dev/null
+++ b/assets/zone_v2_icon/outdoors.svg
@@ -0,0 +1,14 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/painting.svg b/assets/zone_v2_icon/painting.svg
new file mode 100644
index 0000000..2e0cd81
--- /dev/null
+++ b/assets/zone_v2_icon/painting.svg
@@ -0,0 +1,23 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/parenting.svg b/assets/zone_v2_icon/parenting.svg
new file mode 100644
index 0000000..719ea97
--- /dev/null
+++ b/assets/zone_v2_icon/parenting.svg
@@ -0,0 +1,26 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/rural.svg b/assets/zone_v2_icon/rural.svg
new file mode 100644
index 0000000..86890a6
--- /dev/null
+++ b/assets/zone_v2_icon/rural.svg
@@ -0,0 +1,17 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/shortplay.svg b/assets/zone_v2_icon/shortplay.svg
new file mode 100644
index 0000000..dae6736
--- /dev/null
+++ b/assets/zone_v2_icon/shortplay.svg
@@ -0,0 +1,26 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/sports.svg b/assets/zone_v2_icon/sports.svg
new file mode 100644
index 0000000..70f6360
--- /dev/null
+++ b/assets/zone_v2_icon/sports.svg
@@ -0,0 +1,8 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/tech.svg b/assets/zone_v2_icon/tech.svg
new file mode 100644
index 0000000..9874d4e
--- /dev/null
+++ b/assets/zone_v2_icon/tech.svg
@@ -0,0 +1,23 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/travel.svg b/assets/zone_v2_icon/travel.svg
new file mode 100644
index 0000000..e2891a1
--- /dev/null
+++ b/assets/zone_v2_icon/travel.svg
@@ -0,0 +1,26 @@
+
\ No newline at end of file
diff --git a/assets/zone_v2_icon/vlog.svg b/assets/zone_v2_icon/vlog.svg
new file mode 100644
index 0000000..bb8343d
--- /dev/null
+++ b/assets/zone_v2_icon/vlog.svg
@@ -0,0 +1,26 @@
+
\ No newline at end of file
diff --git a/docs/APP_widget/splash.md b/docs/APP_widget/splash.md
new file mode 100644
index 0000000..2a3179c
--- /dev/null
+++ b/docs/APP_widget/splash.md
@@ -0,0 +1,567 @@
+# APP端开屏图片
+
+## 获取APP端开屏图片列表
+
+> https://app.bilibili.com/x/v2/splash/brand/list
+
+*请求方式:GET*
+
+鉴权方式:APP
+
+**url参数:**
+
+| 参数名 | 类型 | 内容 | 必要性 | 备注 |
+|--------|-----|-------|---------|-----|
+| appkey | str | APP密钥 | APP方式必要 | |
+| ts | num | 当前时间戳 | APP方式必要 | |
+| sign | str | APP签名 | APP方式必要 | |
+
+**json回复:**
+
+根对象:
+
+| 字段 | 类型 | 内容 | 备注 |
+|---------|-----|------|---------------------------------------|
+| code | num | 返回值 | 0:成功
+
+
+## 获取APP端开屏幕广告信息
+
+> https://app.bilibili.com/x/v2/splash/list
+
+*请求方式: GET*
+
+| 参数名 | 类型 | 内容 | 必要性 | 备注 |
+|----------|-----|-----------------------|-----|-----|
+| build | int | 客户端内部版本号 | 必要 | |
+| mobi_app | str | android, iphone, ipad | 必要 | |
+| platform | str | android, ios | 必要 | |
+| height | int | 屏幕高度 | 必要 | |
+| width | int | 屏幕宽度 | 必要 | |
+| birth | str | 生日日期(四位数,例 0101) | 必要 | |
+
+**json回复:**
+
+根对象:
+
+| 字段 | 类型 | 内容 | 备注 |
+|---------|-----|------|---------------------------------------|
+| code | num | 返回值 | 0:成功:块级引用元素](https://developer.mozilla.org/zh-CN/docs/Web/HTML/Reference/Elements/blockquote) | +| bold | boolean? | 加粗 | 参见 [\](https://developer.mozilla.org/zh-CN/docs/Web/HTML/Reference/Elements/strong) | +| class | string? | 类名 | 参见 [class](https://developer.mozilla.org/zh-CN/docs/Web/HTML/Reference/Global_attributes/class) | +| color | string? | 颜色 | 十六进制颜色值, 参见 [color](https://developer.mozilla.org/zh-CN/docs/Web/CSS/color) | +| header | number? | 标题级别 | 参见 [\–\
:HTML 区域标题元素](https://developer.mozilla.org/zh-CN/docs/Web/HTML/Reference/Elements/Heading_Elements) | +| strike | boolean? | 删除线 | 参见 [\
](https://developer.mozilla.org/zh-CN/docs/Web/HTML/Reference/Elements/s) | +| link | string? | 站内链接 | 参见 [\:锚元素](https://developer.mozilla.org/zh-CN/docs/Web/HTML/Reference/Elements/a) | +| italic | boolean? | 斜体 | 参见 [\:强调元素](https://developer.mozilla.org/zh-CN/docs/Web/HTML/Reference/Elements/em) | list | string? | 列表 | `bullet`: 无序列表, 参见 [\:无序列表元素](https://developer.mozilla.org/zh-CN/docs/Web/HTML/Reference/Elements/ul)
`ordered`: 有序列表, 参见 [\](https://developer.mozilla.org/zh-CN/docs/Web/HTML/Reference/Elements/ol) | + +`data.content` 代表的对象中的 `ops[].insert` 为对象时的对象: + +| 字段 | 类型 | 内容 | 备注 | +| ---- | ---- | ---- | ---- | +| native-image | object? | 原生图片 | 见下, 另见 [\
:图像嵌入元素](https://developer.mozilla.org/zh-CN/docs/Web/HTML/Reference/Elements/img) | +| cut-off | object? | 分割线 | 见下 | +| video-card | object? | 视频卡片 | 见下 | +| article-card | object? | 专栏卡片 | 见下 | +| vote-card | object? | 投票卡片 | 见下 | +| live-card | object? | 投票卡片 | 见下 | + +`data.content` 代表的对象中的 `ops[].insert.native-image` 对象: + +注: 此处属性备注为页面实际渲染的情况 + +| 字段 | 类型 | 内容 | 备注 | +| ---- | ---- | ---- | ---- | +| alt | string | 图像的备用文本描述 | 即 `
` 的 `alt` 属性 | +| url | string | 图像的 URL | 即 `
` 的 `src` 属性 | +| width | number | 图像的宽度 | 即 `
` 的 `data-w` 属性 | +| height | number | 图像的高度 | 即 `
` 的 `data-h` 属性 | +| size | number | 图像的文件大小 | 即 `
` 的 `data-size` 属性 | +| status | number | `"loaded"` | 即 `
` 的 `data-status` 属性 | + +`data.content` 代表的对象中的 `ops[].insert.cut-off` 对象: + +| 字段 | 类型 | 内容 | 备注 | +| ---- | ------ | ---- | ---- | +| type | string | 类型 | 没错, 就是字符串 | +| url | string | 分割线图片 URL | | + +`data.content` 代表的对象中的 `ops[].insert.video-card` 对象: + +| 字段 | 类型 | 内容 | 备注 | +| ---- | ------ | ---- | ---- | +| alt | string | | | +| height | number | 卡片高度 | 似乎恒定为 `352` | +| id | string | 视频 id | 如 `av99999999` | +| size | null | | | +| status | string | `loaded` | | +| tid | number | `1.1` | | +| url | string | 卡片图片 URL | | +| width | number | 卡片宽度 | 似乎恒定为 `2632` | + +`data.content` 代表的对象中的 `ops[].insert.article-card` 对象: + +| 字段 | 类型 | 内容 | 备注 | +| ---- | ------ | ---- | ---- | +| alt | string | | | +| height | number | 卡片高度 | 似乎恒定为 `320` | +| id | string | 文章 id | 如 `cv1` | +| size | null | | | +| status | string | `loaded` | | +| tid | number | `2` | | +| url | string | 卡片图片 URL | | +| width | number | 卡片宽度 | 似乎恒定为 `2632` | + +`data.content` 代表的对象中的 `ops[].insert.vote-card` 对象: + +| 字段 | 类型 | 内容 | 备注 | +| ---- | ------ | ---- | ---- | +| alt | string | | | +| height | number | 卡片高度 | 似乎恒定为 `320` | +| id | string | 投票 id | 确实是字符串, 如 `15111509` | +| size | null | | | +| status | string | `loaded` | | +| tid | number | `7` | | +| url | string | 卡片图片 URL | | +| width | number | 卡片宽度 | 似乎恒定为 `2632` | + +`data.content` 代表的对象中的 `ops[].insert.live-card` 对象: + +| 字段 | 类型 | 内容 | 备注 | +| ---- | ------ | ---- | ---- | +| alt | string | | | +| height | number | 卡片高度 | 似乎恒定为 `352` | +| id | string | 直播间 id | 可能为长也可能为短, 如 `lv1` `lv5440` | +| size | null | | | +| status | string | `loaded` | | +| tid | number | `8` | | +| url | string | 卡片图片 URL | | +| width | number | 卡片宽度 | 似乎恒定为 `2632` | + + +`data.list` 对象: + +| 字段 | 类型 | 内容 | 备注 | +| ---- | ---- | ---- | ---- | +| apply_time | string | 空 | | +| articles_count | number | 0 | | +| check_time | string | 空 | | +| ctime | number | 创建时间 | UNIX 秒级时间戳 | +| id | number | 文集 ID | | +| image_url | string | 文集封面 URL | | +| mid | number | 作者 mid | | +| name | string | 文集名称 | | +| publish_time | number | 最新发布时间 | UNIX 秒级时间戳 | +| read | number | 0 | | +| reason | string | 审核不通过理由? | | +| state | number | 文集状态 | | +| summary | string | 文集描述 | | +| update_time | number | 文集更新时间 | UNIX 秒级时间戳 | +| words | number | 文集总词数 | | + +`data.media` 对象: + +| 字段 | 类型 | 内容 | 备注 | +| ---- | ---- | ---- | ---- | +| area | string | | | +| cover | string | | | +| media_id | number | | | +| score | number | | | +| season_id | number | | | +| spoiler | number | | | +| title | string | | | +| type_id | number | | | +| type_name | string | | | + +`data.stats` 对象: + +| 字段 | 类型 | 内容 | 备注 | +| ---- | ---- | ---- | ---- | +| coin | number | 硬币数 | | +| dislike | number | 点踩数 | 0 | +| dynamic | number | 动态数? | | +| favorite | number | 收藏数 | | +| like | number | 点赞数 | | +| reply | number | 回复数 | | +| share | number | 分享数 | | +| view | number | 查看数 | | + +`data.tags[]` 对象: + +| 字段 | 类型 | 内容 | 备注 | +| ---- | ---- | ---- | ---- | +| name | string | 标签名 | | +| tid | number | 标签 ID | | + +**示例:** + +`type=0`: `cv1` 未知的光 + +```shell +curl -G 'https://api.bilibili.com/x/article/view' \ +--url-query 'id=1' \ +-A 'Mozilla/5.0' +``` + +
++ + + +`type=3`: `cv41358718` 通过 DevTools 绕过 SSR 抓包某站专栏正文接口 + +```shell +curl 'https://api.bilibili.com/x/article/view?id=41358718' \ +-A 'Mozilla/10.0' +``` + +查看响应示例:
+ +```json +{ + "code": 0, + "data": { + "act_id": 0, + "apply_time": "", + "attributes": 24, + "authenMark": null, + "author": { + "face": "https://i1.hdslb.com/bfs/face/89fe260a17891fdadc3365a9698fee52796c7765.jpg", + "fans": 3051, + "level": 6, + "mid": 91221505, + "name": "健行见远渐忘", + "nameplate": { + "condition": "2018.6.26-7.8某一天是年度大会员", + "image": "https://i0.hdslb.com/bfs/face/421179426c929dfeaed4117461c83f5d07ffb148.png", + "image_small": "https://i0.hdslb.com/bfs/face/682001c2e1c2ae887bdf2a0e18eef61180c48f84.png", + "level": "稀有勋章", + "name": "大会员2018年度勋章", + "nid": 74 + }, + "official_verify": { + "desc": "", + "type": -1 + }, + "pendant": { + "expire": 0, + "image": "https://i1.hdslb.com/bfs/face/7ae15f06f8c912435206a2578509d6bc77c12353.png", + "name": "作文鬼才", + "pid": 255 + }, + "vip": { + "avatar_subscript": 1, + "due_date": 0, + "label": { + "label_theme": "annual_vip", + "path": "http://i0.hdslb.com/bfs/vip/label_annual.png", + "text": "年度大会员" + }, + "nickname_color": "#FB7299", + "status": 1, + "theme_type": 0, + "type": 2, + "vip_pay_type": 0 + } + }, + "banner_url": "https://i0.hdslb.com/bfs/article/b1e1029c08d8ad1bb06460d736839a7741dd7925.jpg", + "categories": [ + { + "id": 3, + "name": "生活", + "parent_id": 0 + }, + { + "id": 15, + "name": "日常", + "parent_id": 3 + } + ], + "category": { + "id": 15, + "name": "日常", + "parent_id": 3 + }, + "check_state": 0, + "check_time": "", + "content": "天空像是倾倒出的墨水,黑得静谧而深邃。黎明还远,光亮全无。
夜不能寐。披衣,起床。茶香的弥漫,一盏灯的相伴。夜,你是我久别重逢的朋友,那一刹那的相见,带给了我久违的安思。如果不是梦魇的皮闹,我本不该投入你的怀抱,此时此刻,万念侵扰,思绪咆哮。
台灯在角落里静静注视着我,不稳定的电流偶尔会吱吱作响。一切都像打在海绵上的水,渐渐消失,慢慢隐身于黑夜,独独留下我自己。一盏灯就可以把夜撕出个伤口,我似乎听到夜逃离光亮的脚步声,窸窸窣窣。它在蔓延,吞噬的野心已越过了窗沿。
我捧着茶杯,仿佛是在捧着一整个空间,凝重而诡异。茶香绕过茶杯脱落的瓷层向四周扩散,空气闻到了茶香,于是身边的气息似乎活跃了起来。转念一想,人生如茶。器皿的束缚不是茶香的归宿,所以人生的低谷也不是生命的全部。黑暗是光明的束缚,但光明却是黑暗的归宿。
灯光下,书架上一本金色题字的书的书名熠熠发光,我起身取下书,发现是海伦写的《假如给我三天光明》,我内心一热,忽然间有些感动。一个身体残疾的孩子,孱弱的身躯却支撑起了刚劲的灵魂。她的眼前一片漆黑,但内心世界却是光彩艳丽的。她的心中永远都有一抹无形的光,指引着她踏遍人生的路途。
时钟告诉我现在是凌晨四点。我舒展下筋骨,刚要起身,一只飞虫不偏不斜恰好闯入我的视线。灯光是它唯一的追寻。我不敢有任何的动作,只好也只能静静看着这只可爱的生灵。它好像不知道我是它的伙伴,也许它真的以为光亮是它唯一的追寻。但是我却欣慰于这突如其来的伙伴。光明可以带来很多东西,有时候也包括一份黑暗中的灵魂的一份安慰。我不忍打扰它与光明的约会,于是悄悄起身慢慢摸索着到了阳台。
阳台和我沉入了外面黑暗的梦乡。隐约可以听到一些不知名的昆虫在开着它们的舞会,我猜它们都端着无形的酒杯。它们在黑暗中买醉,因为明天的天明将是它们的散会。我有些感怀,也有些悲哀。
夜风股股咆哮着,我昂首顶住风头,仰望着漆黑的四周。很远很远处,灯塔若隐若现。它向来就是一头巨大的野兽,而此时它却空荡的像杯将尽的酒。它散发出柔弱的灯光在风中摇曳,忽明忽暗,像是一场与黑暗的决斗,随时都可能葬身在这黎明的前奏。
不忍心这惨烈的一幕,我踱步来到窗前。窗子很旧了,旧到已经无法再承受住时间的践踏了。可无论它多么陈旧,此时的它是神奇的——窗外黑暗窗内光。人心不也是一扇窗户吗?一半明媚一半伤。窗户把光亮的一面给了光明,人心是不是也应该把明媚的一半朝向世界呢?
屋内的灯倏忽闪了闪,我晃过神来,发现天边已经有抹淡红色了。黎明的脚步已经迈出了一半。那只与台灯约会的虫子似乎很满意,兴高采烈的向着呼之欲出的朝阳的方向窜去了。我望着它的背影,轻轻挥了挥手,心中暗念:“亲爱的朋友,恭喜你找到了属于自己的方向和追求,希望你能在光和热中接受生命的升华。”
天空见亮了,有点空灵,光晕中泛着感动。第一缕曙光穿透了云层,是的,我看到了,那一抹光,越来越近,越来越亮……
", + "content_pic_list": null, + "cover_avid": 0, + "ctime": 1497973729, + "dispute": null, + "dyn_id_str": "38554821905721204", + "dynamic": "It's now or never !", + "id": 1, + "image_urls": [ + "https://i0.hdslb.com/bfs/article/d2eedf1fd338bceca10099e2f7b33fa9017c859b.jpg" + ], + "is_like": false, + "keywords": "天空像是倾倒出的墨水,黑得静谧而深邃。黎明还远,光亮全无。夜不能寐。披衣,起床。茶香的弥漫,一盏灯的相伴。夜,你是我久别重逢的朋友,那一刹那的相见,带给了我久违的安思。如果不是梦魇的皮闹,我本不该投入", + "list": { + "apply_time": "", + "articles_count": 0, + "check_time": "", + "ctime": 1588601669, + "id": 253534, + "image_url": "", + "mid": 91221505, + "name": "静夜思", + "publish_time": 1625900652, + "read": 0, + "reason": "", + "state": 1, + "summary": "", + "update_time": 1625900518, + "words": 3059 + }, + "media": { + "area": "", + "cover": "", + "media_id": 0, + "score": 0, + "season_id": 0, + "spoiler": 0, + "title": "", + "type_id": 0, + "type_name": "" + }, + "mtime": 1589209079, + "origin_image_urls": [ + "https://i0.hdslb.com/bfs/article/b1e1029c08d8ad1bb06460d736839a7741dd7925.jpg" + ], + "origin_template_id": 4, + "original": 0, + "private_pub": 0, + "publish_time": 1519913233, + "reprint": 0, + "state": 0, + "stats": { + "coin": 2543, + "dislike": 1, + "dynamic": 0, + "favorite": 17520, + "like": 32484, + "reply": 14399, + "share": 616, + "view": 1631212 + }, + "summary": "天空像是倾倒出的墨水,黑得静谧而深邃。黎明还远,光亮全无。夜不能寐。披衣,起床。茶香的弥漫,一盏灯的相伴。夜,你是我久别重逢的朋友,那一刹那的相见,带给了我久违的安思。如果不是梦魇的皮闹,我本不该投入", + "tags": [ + { + "name": "静夜思", + "tid": 239416 + } + ], + "template_id": 4, + "title": "未知的光", + "top_video_info": null, + "total_art_num": 5, + "type": 0, + "version_id": 0, + "words": 1190 + }, + "message": "0", + "ttl": 1 +} +``` ++查看响应示例:
+ +```json +{ + "code": 0, + "message": "0", + "ttl": 1, + "data": { + "id": 41358718, + "category": { + "id": 26, + "parent_id": 17, + "name": "数码" + }, + "categories": [ + { + "id": 17, + "parent_id": 0, + "name": "科技" + }, + { + "id": 26, + "parent_id": 17, + "name": "数码" + } + ], + "title": "通过 DevTools 绕过 SSR 抓包某站专栏正文接口", + "summary": "背景\n最近没什么事做, 又回 BAC 看看有什么接口可以抓, 于是看到了陈年的专栏正文内容的 Issue #859\n由于泽生自己是写前端的, 对于浏览器 DevTools 的各项调试工具还算是比较了解, 打算想办法把专栏正文的接口抓下来 :)\n思路\n由于专栏正文完整的内容在页面加载的时候就已经通过 SSR (Server-Side Rendering, 服务端渲染) 的方式通过 + + +b0cc8411ded2f9db2cff2edb3123acac+ + + + + + +