自动同步: 2026-03-14 02:10

This commit is contained in:
2026-03-14 02:10:08 +08:00
parent 8da5f11591
commit 3b83bbb929
52 changed files with 4378 additions and 1930 deletions
+166 -25
View File
@@ -1,46 +1,187 @@
---
name: kb-bilibili-metadata
description: B站元数据提取 - 获取视频/专栏/UP主的详细信息
---
# KB Bilibili Metadata Skill
**kb-bilibili-metadata** - Extract Bilibili video/article/up主 metadata.
**kb-bilibili-metadata** - 提取 B站视频、专栏、UP主的元数据。
## Features
## 什么时候使用
- Video metadata extraction
- Article (专栏) metadata extraction
- UP主 information extraction
- JSON output format
- Playwright + HTTP API fallback
- kb-workflow 步骤 2:获取 B站内容的元数据
- 需要视频标题、作者、时长等信息
## Commands
## 功能
- 视频元数据提取
- 专栏(article)元数据提取
- UP主信息提取
- JSON 输出格式
- 支持 `--output` 参数指定输出文件
## 命令
```bash
# Video metadata
python bilibili_metadata.py --id "BV1xx411c7mD" --type video
# 视频元数据
python3 bilibili_metadata.py --id "BV1xx411c7mD" --type video
# Article metadata
python bilibili_metadata.py --id "cv43780186" --type article
# 专栏元数据
python3 bilibili_metadata.py --id "cv43780186" --type article
# UP主 info
python bilibili_metadata.py --id "7770724" --type up
# UP主信息
python3 bilibili_metadata.py --id "7770724" --type up
# 指定输出文件
python3 bilibili_metadata.py --id "BV1xx411c7mD" --type video --output "metadata/bilibili_BV1xx411c7mD.meta.json"
```
## Output
## 输出格式 Schema
### 必需字段
| 字段 | 类型 | 说明 |
|------|------|------|
| `success` | boolean | 是否提取成功 |
| `platform` | string | 固定为 `bilibili` |
| `content_id` | string | 内容 ID(BV号/cv号/uid) |
| `content_type` | string | 内容类型(video/article/up) |
| `title` | string | 标题(视频/专栏)或名称(UP主) |
### 可选字段
| 字段 | 类型 | 说明 |
|------|------|------|
| `author` | string | 作者/UP主名称 |
| `duration` | string | 时长(视频) |
| `description` | string | 简介/描述 |
| `stats` | object | 统计数据(播放、点赞等) |
| `output_file` | string | 输出文件路径 |
| `error` | string | 错误信息(失败时) |
## 成功示例
### 视频元数据
```json
{
"success": true,
"data": {
"platform": "bilibili",
"type": "video",
"id": "BV1xx411c7mD",
"title": "视频标题",
"author": "UP主名字",
"stats": {"view": 100000, "like": 5000}
}
"platform": "bilibili",
"content_type": "video",
"content_id": "BV1xx411c7mD",
"title": "视频标题",
"author": "UP主名字",
"duration": "10:30",
"description": "视频简介内容...",
"stats": {
"view": 100000,
"like": 5000,
"coin": 2000,
"favorite": 1000,
"share": 500,
"danmaku": 3000
},
"output_file": "metadata/bilibili_BV1xx411c7mD.meta.json"
}
```
## Installation
### 专栏元数据
```json
{
"success": true,
"platform": "bilibili",
"content_type": "article",
"content_id": "cv43780186",
"title": "专栏标题",
"author": "作者名字",
"description": "专栏摘要...",
"stats": {
"view": 50000,
"like": 2000,
"comment": 500
},
"output_file": "metadata/bilibili_cv43780186.meta.json"
}
```
### UP主信息
```json
{
"success": true,
"platform": "bilibili",
"content_type": "up",
"content_id": "7770724",
"title": "UP主名字",
"description": "UP主签名...",
"stats": {
"follower": 1000000,
"following": 100,
"video_count": 500
},
"output_file": "metadata/bilibili_7770724.meta.json"
}
```
## 错误示例
### 视频不存在
```json
{
"success": false,
"platform": "bilibili",
"content_id": "BV1invalid",
"content_type": "video",
"error": "视频不存在或已被删除"
}
```
### 网络错误
```json
{
"success": false,
"platform": "bilibili",
"content_id": "BV1xx411c7mD",
"content_type": "video",
"error": "网络请求失败: Connection timeout"
}
```
### 参数错误
```json
{
"success": false,
"error": "缺少必需参数: --id"
}
```
## 安装
```bash
cp -r kb-bilibili-metadata/ ~/skills/
cp -r kb-bilibili-metadata/ ~/.openclaw/skills/
pip install httpx playwright
playwright install chromium
```
## 在 kb-workflow 中的使用
```bash
# 步骤 2:元数据提取(B站视频)
python3 ~/.openclaw/skills/kb-bilibili-metadata/bilibili_metadata.py \
--id "BV1xx411c7mD" --type video \
--output "metadata/bilibili_BV1xx411c7mD.meta.json"
# 检查输出:
# - success=true → 进入步骤 3
# - success=false → 检查错误,可能需要重试或退出
```
## 注意事项
- 部分视频可能需要登录才能获取完整信息
- 专栏内容可能需要额外的 Cookie 配置
- 如果使用 Playwright 方式,首次运行需要下载浏览器