How abcliyew/bilibili-api works
Bilibili API is a Java client library for retrieving Bilibili account, video, dynamic, live, and other platform data. Callers use its facades and services to request and receive typed results; the video client also exposes convenient video-field accessors. Separate service branches cover search, login, user space, comments, and personal content. Shared HTTP, WBI signing, and response parsing support these operations, while dynamic-image rendering is an additional result path. README documents the broad feature set; only sampled service excerpts confirm some internal wiring, so uncertain links are omitted.
Main entry points: BilibiliHttp.java HTTP Client · VideoService.java Video Service · UserService.java User Space · DynamicService.java Dynamic Service
Components 22
API Facades
- Video Client
src/main/java/com/esdllm/bilibiliApi/bilibiliApi/BilibiliClient.java
Data Services
- Video Service
src/main/java/com/esdllm/bilibiliApi/service/VideoService.java - User Space
src/main/java/com/esdllm/bilibiliApi/service/UserService.java - Dynamic Service
src/main/java/com/esdllm/bilibiliApi/service/DynamicService.java - Search Service
src/main/java/com/esdllm/bilibiliApi/service/SearchService.java - Login Service
src/main/java/com/esdllm/bilibiliApi/service/LoginService.java - Comment Service
src/main/java/com/esdllm/bilibiliApi/service/CommentService.java - Favorites
src/main/java/com/esdllm/bilibiliApi/service/FavoriteService.java - History
src/main/java/com/esdllm/bilibiliApi/service/HistoryService.java - Live Service
src/main/java/com/esdllm/bilibiliApi/service/LiveService.java - Danmaku
src/main/java/com/esdllm/bilibiliApi/service/DanmakuService.java - Short Links
src/main/java/com/esdllm/bilibiliApi/service/ShortLinkService.java
Request Runtime
- HTTP Client
src/main/java/com/esdllm/bilibiliApi/http/BilibiliHttp.java - WBI Signer
src/main/java/com/esdllm/bilibiliApi/sign/WbiSigner.java - WBI Key Cache
src/main/java/com/esdllm/bilibiliApi/sign/WbiKeyStore.java - Response Parser
src/main/java/com/esdllm/bilibiliApi/parse/ResponseParserSupport.java - Typed Models
src/main/java/com/esdllm/bilibiliApi/model/data/BilibiliData.java
Dynamic Rendering
- Dynamic Adapter
src/main/java/com/esdllm/bilibiliApi/adapter/DynamicSchemaAdapter.java - Render Loader
src/main/java/com/esdllm/bilibiliApi/render/RenderModelLoader.java - Java2D Renderer
src/main/java/com/esdllm/bilibiliApi/render/Java2DImageRenderer.java
Other components
- Library Caller
- Bilibili API
Connections 34
- Library Caller → Video Client: calls
- Library Caller → Video Service: calls
- Library Caller → User Space: calls
- Library Caller → Dynamic Service: calls
- Library Caller → Search Service: calls
- Library Caller → Login Service: calls
- Library Caller → Comment Service: calls
- Library Caller → Favorites: calls
- Library Caller → History: calls
- Library Caller → Live Service: calls
- Library Caller → Danmaku: calls
- Library Caller → Short Links: calls
- Video Client → Video Service: resolves via
- Video Service → HTTP Client: requests
- User Space → HTTP Client: requests
- Search Service → HTTP Client: requests
- Login Service → HTTP Client: requests
- Comment Service → HTTP Client: requests
- Favorites → HTTP Client: requests
- History → HTTP Client: requests
- Live Service → HTTP Client: requests
- Danmaku → HTTP Client: requests
- Short Links → HTTP Client: requests
- HTTP Client → Bilibili API: sends requests
- Bilibili API → HTTP Client: returns responses
- Search Service → Response Parser: parses with
- Comment Service → Response Parser: parses with
- Favorites → Response Parser: parses with
- Video Service → WBI Signer: signs requests
- User Space → WBI Signer: signs requests
- WBI Signer → WBI Key Cache: gets keys
- Dynamic Service → Render Loader: loads render model
- Render Loader → Dynamic Adapter: normalizes schema
- Dynamic Service → Java2D Renderer: renders model