本项目属于内容创作辅助工具领域,服务于 Bilibili 平台的 UP 主群体。Bilibili 作为国内领先的视频社区,拥有数百万活跃内容创作者,平台每月推出数百个创作活动和征稿话题。UP 主需要在海量话题中快速识别高流量、高参与度的活动,以便合理分配创作资源。目前市场上缺乏专门针对 Bilibili 话题数据聚合和管理的桌面端工具,大多数 UP 主依赖手动浏览网页或使用简易脚本,存在数据获取不全面、管理混乱、操作繁琐等问题。本工具填补了这一市场空白,为 UP 主提供专业的话题数据洞察和管理能力。
本工具的核心价值在于将分散的 Bilibili 活动话题数据进行聚合、分析和可视化展示。通过一键同步功能,UP 主可以在数分钟内获取平台上千个活动话题的完整数据,并通过播放量排行快速锁定高价值话题。工具还支持话题状态跟踪,自动标记活跃和已结束的话题,帮助 UP 主把握参与时机。本地 SQLite 数据库确保持久化存储,历史数据可随时查询对比。整体设计注重数据密度和操作效率,采用暗色主题降低长时间使用的视觉疲劳,虚拟滚动技术确保大数据量下的流畅体验。
这个项目是从零开始独立开发的脚本应用,我一人包揽了前后端所有工作。后端用Rust写了740行代码,把话题枚举、详情获取、数据入库这些逻辑都串起来了,同时用Tokio的信号量把并发请求压到30路,既要速度也得防着B站API限流。前端这边React加Ant Design搭的暗色主题界面,列表数据多了就用react-window做虚拟滚动,试下来几千条数据滚动也不卡。存储上SQLite存话题和视频,Cookie没扔配置文件里,直接用keyring走系统密钥链,至少比明文存放心安一点。整个开发过程中最磨人的其实是适配B站那几个API,字段类型乱得很,view字段有时数字有时字符串,得挨个处理兼容。并发拿数据的时候也踩过坑,网络超时、部分失败这些情况都得兜住,前后端联调时用Tauri的invoke做类型安全通信,进度推送也接上了,整体下来算是把这块硬骨头啃下来了。