WeiboCollectionCategorizer 是一个智能化的微博收藏管理工具,能够自动爬取、存储、分类和管理个人微博收藏,解决收藏数量过多难以管理的问题。
- 智能采集:自动读取所有微博收藏链接,去重处理,下载完整内容
- 数据存储:使用SQLite数据库存储微博文字、配图、视频及元数据
- AI分类:接入LLM对微博内容进行自动分类和标签生成
- 可视化管理:提供PyQt6界面进行数据浏览、搜索、笔记和删除操作
- 同步管理:经用户确认后自动取消已存储的微博收藏
解决微博收藏数量庞大无法有效管理的问题,实现个人知识库的建立和维护。
- 数据库:SQLite(轻量级,配置简单)
- 文件系统:媒体文件本地存储
- 状态管理:待处理/已完成/失败状态追踪
- 爬虫引擎:基于现有微博API,支持收藏列表和详情获取
- LLM集成:内容分析、分类和标签生成
- PyQt6界面:本地GUI应用,支持数据浏览和管理
- 同步管理:收藏状态同步,支持用户确认机制
- 不可访问微博的统一处理机制
- 重试机制和详细操作日志
- 用户确认机制防止误操作
本项目主要使用 Cursor/Claude Code 协助开发,主要模型 Claude Sonnet,负责需求分析、逻辑梳理、测试和调试。
参考 Weibo Crawler 项目的微博爬虫实现方案。
通过csv批量输入微博链接下载
- 微博信息
- 微博正文及转发内容
- 图片
- livephoto
- 视频
读取个人收藏列表并保存csv
-
数据存储升级
- 从CSV迁移到SQLite数据库
- 设计完整的数据表结构(微博、用户、媒体、任务状态、分类标签)
- 实现数据迁移脚本
- 添加索引优化查询性能
-
时间字段优化
- 添加微博发布时间字段
- 添加收藏时间字段,如果无法获取收藏时间信息则放弃此字段
- 实现基于时间的排序和筛选功能
-
现有UI项目集成
- 评估现有UI项目的架构和技术栈
- 设计微博数据展示的表结构适配
- 集成UI项目到当前项目目录结构
- 实现微博内容的可视化展示(文本、图片、视频)
-
UI功能扩展
- 添加微博分类标签的可视化管理
- 实现搜索和筛选功能
- 添加批量操作的界面支持
- 集成下载任务的状态监控界面
-
去重机制
- 实现基于source_url的去重逻辑
- 处理原博与转发的优先级(保留转发)
- 处理多个不同转发链的同时保留
- 在UI中展示去重结果和统计
-
下载稳定性增强
- 实现媒体下载失败的精确标记
- 添加单个媒体文件重试机制
- 实现整条微博下载失败的标记和重试
- 开发补充下载功能
- 在UI中显示下载进度和失败状态
-
LLM集成
- 接入LLM API(支持多种提供商)
- 设计微博内容分类的提示词模板
- 实现批量分类处理流程
- 在UI中集成分类操作和结果展示
-
分类管理
- 开发分类标签系统
- 实现分类结果的存储和查询
- 添加分类统计和报告功能
- 在UI中实现分类标签的拖拽和编辑
-
批量操作优化
- 实现基于下载状态的智能取消收藏
- 添加批量操作的错误处理和重试机制
- 优化反复读取收藏列表的去重策略
- 实现增量更新收藏列表
-
内容完整性和扩展
- 测试转发内容中的链接、图片、视频显示
- 评估微博文章下载的必要性和实现方案
- 优化媒体文件完整性检查
-
系统监控
- 完善日志记录系统
- 添加运行状态监控
- 实现数据备份和恢复功能
- 在UI中添加系统状态仪表板
-
优化和维护
- 优化命令行参数和帮助信息
- 添加配置文件的图形化管理
- 实现数据导出功能
- 添加使用统计和分析功能