Bilibili UP主数据采集与分析
触发条件
当用户提供一批 Bilibili UP主信息(名称 + space.bilibili.com/UID 格式的主页链接),要求生成数据报告或 CSV 文件时,使用本技能。
执行流程
第一步:解析 UP 主列表
从用户输入中提取所有 UP 主的名称和 UID(URL 中 space.bilibili.com/ 后面的数字)。格式示例:
GenJi是真想教会你 https://space.bilibili.com/49746395
解析为:["GenJi是真想教会你", 49746395],最终构建成 JSON 数组:[["GenJi是真想教会你", 49746395], ...]
第二步:运行采集脚本
脚本固定在 skill 目录中,无需在当前工作目录查找或创建。直接运行:
python3 ~/.claude/skills/bilibili-ups/analyze_ups.py '<UPS_JSON>' '<当前工作目录>'
<UPS_JSON>:第一步构建的 JSON 数组字符串,例如'[["GenJi是真想教会你", 49746395], ["老麦的工具库", 486989780]]'<当前工作目录>:用户的当前工作目录(即$PWD),CSV 将输出到此目录
完整示例:
python3 ~/.claude/skills/bilibili-ups/analyze_ups.py '[["GenJi是真想教会你", 49746395]]' "$PWD"
脚本会自动:
- 调用 bilibili_api 获取每位 UP 主的粉丝数、关注数、等级、简介、视频列表
- 计算累计播放量、最近投稿日,以及最新视频的播放/点赞/投币/评论/弹幕/时长/发布距今分钟数
- 按粉丝数倒序保存到当前工作目录的
ups_result.csv
第三步:读取 CSV 并输出统计分析
脚本运行完成后,读取当前工作目录的 ups_result.csv,输出以下统计分析报告:
3.1 基础总览
- UP 主总数
- 总粉丝数、总视频数、总累计播放量
- 平均粉丝数、平均视频数、平均播放量
3.2 粉丝梯队分层
按粉丝数分层并列出各层 UP 主:
- 顶流(≥100万)
- 腰部(10万–100万)
- 成长期(<10万)
3.3 TOP 榜单(各取前5)
- 粉丝数 TOP 5
- 累计播放量 TOP 5
- 视频数 TOP 5
- 平均单视频播放量 TOP 5(累计播放量 ÷ 视频数)
3.4 活跃度分析
- 最近30天有投稿的 UP 主数量和比例
- 最近投稿日 TOP 5(最近活跃)
- 超过3个月未更新的 UP 主列表
3.5 综合评估
- 简要文字结论,包括整体量级、活跃程度、头部效应是否明显等观察,以及综合分析近期的视频体现了当前的AI热点是什么?发哪些能火哪些不能火等等,帮我找一些适合我科普的选题素材,当前发布有火的苗头,但又不是很多人已经发了竞争太激烈的点。
注意事项
- bilibili_api 需要已安装:
pip install bilibili-api-python - 无需登录即可抓取公开数据
- 抓取过程有限流保护,31位UP主约需5-8分钟
- 输出文件编码为 UTF-8 with BOM,可直接用 Excel 打开
- CSV 输出到用户当前工作目录,脚本本身始终位于
~/.claude/skills/bilibili-ups/analyze_ups.py
扫码联系在线客服