自动同步: 2026-03-14 02:10
This commit is contained in:
@@ -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 方式,首次运行需要下载浏览器
|
||||
|
||||
Reference in New Issue
Block a user