| name | bilibili-following |
| description | Fetch ALL Bilibili followed UP 主 (关注列表) via API and AI-classify them by content type. Trigger when user says "B站关注整理", "整理我的B站关注", "分类B站UP主", "bilibili following", "B站 UP 主分类", "给我的关注分组", or asks to organize/classify their bilibili subscriptions.
|
| user-invocable | true |
Bilibili Following — 关注 UP 主拉取与分类
拉取全部 B 站关注列表,基于每位 UP 主的简介(sign)、官方认证类型、昵称等信息,由 DeepSeek V4 Pro 做语义分类,并同步到不同分区。
Prerequisites
Cookie 文件必须存在于 ~/.agentara/bilibili_cookie,格式:
SESSDATA=xxx; bili_jct=xxx; DedeUserID=xxx
如果文件不存在,引导用户去浏览器获取(F12 → Application → Cookies → bilibili.com),并终止。
Step 1 — Fetch Following List
运行脚本拉取全量关注:
python3 ~/.claude/skills/bilibili-following/scripts/fetch_following.py > /tmp/bilibili_following.json
脚本输出:
- stderr:进度日志(页码、已拉取数量)
- stdout:JSON 数组,每个元素为
{mid, uname, sign, official_verify_type, official_verify_desc, face}
全量关注大约需要几秒到十几秒。不要用 --max 参数,拉全量。
Step 2 — AI Classification
读取 /tmp/bilibili_following.json,通过本地 DeepSeek 代理对每位 UP 主进行语义分类。
分类维度
根据 sign(个人简介)、official_verify_desc(认证描述)、uname(昵称)综合判断,归入以下类别之一:
| 类别 | 典型特征 |
|---|
| 科技数码 | 数码评测、编程、AI、硬件、软件、开源、极客 |
| 知识教育 | 科普、学术、课程、历史、法律、经济学、哲学 |
| 游戏 | 游戏实况、电竞、攻略、主机/手游/steam |
| 生活日常 | vlog、日常、穿搭、家居、亲子、宠物 |
| 动画番剧 | 动漫、二次元、MAD、手书、漫评、声优 |
| 音乐 | 翻唱、原创音乐、乐器演奏、音乐制作、音mad |
| 美食 | 探店、烹饪、烘焙、美食测评 |
| 影视娱乐 | 影视解说、综艺、追剧、电影、影视剪辑 |
| 时尚美妆 | 美妆教程、穿搭、护肤、发型 |
| 运动健身 | 健身、跑步、球类、户外运动 |
| 汽车 | 汽车评测、改装、摩托、赛车 |
| 舞蹈 | 编舞、翻跳、宅舞 |
| 鬼畜 | 鬼畜调教、人力VOCALOID |
| 其他 | 无法明确归入以上类别的 |
分类方法
默认方法:
- 把
official_verify_desc、sign、uname 一起送给 DeepSeek V4 Pro
- 让模型按“长期内容方向”判断,而不是看到单个词就硬匹配
- 模型必须只返回一个目标类别、一个置信度和一条简短理由
- 只有在代理不可用或模型输出无法解析时,才退回本地关键词规则兜底
模型端点默认使用本地代理:
http://localhost:8765/api/chat
如需覆盖,可设置环境变量:
DEEPSEEK_PROXY_URL=http://localhost:8765/api/chat
DEEPSEEK_MODEL=deepseek-v4-pro
置信度
每位 UP 主附一个 confidence 字段:
high — 模型或认证信息能明确判断长期内容方向
medium — 模型能根据简介和昵称做较稳定判断
low — 信息较少,只能做弱推断
Step 3 — Save Result
将分类结果保存为:
~/.agentara/workspace/outputs/bilibili/following.json
Schema:
[
{
"mid": 123456,
"uname": "UP主名称",
"sign": "个人简介",
"url": "https://space.bilibili.com/123456",
"face": "头像URL",
"category": "科技数码",
"confidence": "high",
"reason": "官方认证:科技博主"
}
]
Step 4 — Sync Bilibili Web Groups
分类完成后,默认还需要把结果同步回 Bilibili 网页分组。运行:
python3 ~/.claude/skills/bilibili-following/scripts/sync_groups.py ~/.agentara/workspace/outputs/bilibili/following.json
这个脚本会执行以下动作:
- 备份当前所有 B 站分组及其成员到
workspace/outputs/bilibili/group-backup-*.json
- 删除当前所有自定义分组(
tagid > 0),成员自动回到默认分组
- 按
following.json 中的 category 字段创建新的分组
- 把 935 个关注逐批移动到对应分组
- 生成
workspace/outputs/bilibili/group-sync-report.json 做校验
同步后的目标分组顺序为:
知识教育
科技数码
音乐
游戏
影视娱乐
生活日常
运动健身
美食
动画番剧
汽车
舞蹈
时尚美妆
其他
注意:这一步会真实修改你的 B 站网页分组。
Step 5 — Present Summary
输出一份 Markdown 格式的分类报告:
# 📋 B 站关注 UP 主分类报告
## 概览
| 分类 | 数量 | 占比 |
|------|------|------|
| 科技数码 | 120 | 12.8% |
| ... | ... | ... |
## 各类别详情
### 科技数码(120人)
- **UP主A** — 科技博主,专注数码评测 → high
- **UP主B** — AI/编程相关内容 → medium
- ...
必须注意:
- 935 个 UP 主全部分类完毕,不要遗漏
- 第 5 步只展示简报,完整数据在
following.json 中
- 提醒用户可以去 JSON 文件手动调整分类
- 如果用户要求“把网页上的关注分组也改掉”,必须执行 Step 4 的同步脚本,而不是只给出 JSON
After First Run
第一次运行完成后,提醒用户:
分类已保存到 workspace/outputs/bilibili/following.json。你可以打开该文件手动调整任何 UP 主的 category,然后重新运行 scripts/sync_groups.py 同步网页分组。
后续运行 bilibili-dynamics skill 来追踪你最常看的 Top-10 UP 主动态。