NovelSight 小说智析(1)

tanqi
76
2025-04-14

📚 NovelSight 小说智析 | Novel Assistant

AI驱动的小说内容分析与摘要生成系统

💡 功能 • 🚀 快速开始 • 🏗️ 架构 • ⚙️ 技术栈 • 📊 进度

NovelSight 小说智析 (Novel Assistant)

​

AI驱动的小说内容分析与摘要生成系统

功能 • 快速开始 • 架构 • 演示 • 贡献

​

🌟 项目简介

让小说阅读更高效,内容理解更深入

💬 那些年读小说踩过的坑 我在看小说时遇到的问题,让我决定做这个软件

一、那些年读小说踩过的坑

  • 作为一个资深小说爱好者,我在阅读中频繁遇到这些困扰:

  • 筛选难:面对书架上几百本小说,不知道哪本 “不踩雷”

  • 简介写得天花乱坠,实际剧情拖沓、人设崩塌,比如某科幻小说前 10 章都在堆砌技术术语,主线剧情推进极慢。

  • 想找 “反套路” 小说,却只能靠网友评论盲选,耗时又低效。

二、理解累:

  • 复杂世界观小说(如修真体系、星际设定),章节内容零散,看完记不住核心设定,比如某玄幻小说里 300 个门派设定,根本理不清脉络。

  • 长章节小说(如百万字网文),中间穿插大量填充内容,想跳过 “水章” 却担心错过主线,比如某历史小说每 5 章就有 2 章在描写无关的配角日常。 -无论您是想快速了解一部新小说,还是希望深入分析您喜爱的作品,小说精读助手都能提供帮助。

身为资深小说爱好者,我在阅读中频繁遇到这些困扰:

📋 筛选困难

  • 面对书架上几百本小说,不知道哪本"不踩雷"

  • 简介写得天花乱坠,实际剧情拖沓、人设崩塌

  • 想找"反套路"小说,却只能靠网友评论盲选,耗时又低效

📖 理解费力

  • 复杂世界观小说(如修真体系、星际设定),章节内容零散,理不清核心设定

  • 长篇小说中穿插大量填充内容,想跳过"水章"却担心错过主线剧情

NovelSight 通过AI技术解析小说内容,提取关键情节,生成摘要和标签,为您省去筛选和理解的烦恼。无论是快速了解一部新小说,还是深入分析您喜爱的作品,小说智析都能提供专业帮助。

📅 开发日志

2025年4月14日

时间

工作内容

状态

09:30-11:30

解决Spring Security循环依赖问题 修复AccessDeniedException错误

✅

13:00-15:00

完善管理员仪表盘路由配置 创建NovelManagementView和SystemLogsView组件 修复ESLint错误,优化代码结构

✅

15:30-17:30

实现用户登录状态管理和动态显示 优化Vuex存储,改进组件显示 完善登录流程,基于角色跳转

✅

17:30-18:00

代码优化与清理 美化登录按钮和用户下拉菜单样式

✅

📊 项目进度

✅ 已完成内容

​

基础架构搭建

✓ 前端框架搭建 (Vue.js 3 + Element Plus)
✓ 后端框架搭建 (Spring Boot 2.7.12)
✓ 数据库配置 (MySQL 8.0.33)
✓ 基本API设计和实现

用户认证系统

✓ 用户注册/登录功能
✓ JWT令牌认证
✓ 基于角色的权限控制
✓ 登录状态管理和动态显示用户信息

管理员后台

✓ 管理员仪表盘
✓ 用户管理界面
✓ 小说管理界面
✓ 系统日志查看界面

基础UI组件

✓ 导航栏和页面布局
✓ 登录和注册表单
✓ 用户下拉菜单
✓ 小说列表显示

核心业务流程

✓ 小说文件上传功能
✓ 简单的章节识别与提取
✓ 小说处理状态跟踪
✓ 基本的小说详情查看

系统安全性

✓ 解决Spring Security循环依赖问题
✓ 修复AccessDeniedException错误
✓ 优化认证授权流程

​

🔄 待完成内容

​

类别

任务

优先级

核心功能强化

增强中文网络小说的章节识别

高

改进摘要生成算法,减少重复内容

高

实现关键词提取和标签生成

高

数据可视化

关键词云实现

中

情节波动图绘制

中

小说结构分析可视化

中

用户体验优化

添加用户偏好设置

中

实现暗黑模式

低

优化移动端响应式设计

中

高级分析功能

小说内容情感分析

低

人物关系网络图生成

低

写作风格识别

低

系统性能优化

大文件处理性能优化

中

数据库查询优化

中

前端资源加载优化

低

​

💡 核心功能

🔍 自动化文本处理

  • 🗃️ 多源输入: 支持TXT、EPUB格式文件上传和网页链接解析

  • 📑 章节识别: 自动识别章节标题,提取正文内容,过滤广告

  • 🔄 批量处理: 支持批量导入和处理多部小说

📝 智能摘要生成

  • 📌 分层摘要: 提供章节摘要、情节脉络图和全书概述

  • 🧠 内容理解: 通过自然语言处理理解小说情节和主题

  • 📊 结构化输出: 将非结构化文本转换为结构化信息

📈 数据可视化分析

  • ☁️ 关键词云: 直观展示小说关键词和核心概念

  • 📉 情节波动图: 图形化展示故事情节起伏变化

  • 🔬 多维度分析: 从多个角度分析小说风格和特点

🏷️ 个性化标签系统

  • 👍 推荐标签: 突出小说的积极特点

  • ⚠️ 避雷标签: 提示小说的潜在问题

  • 🚪 阅读门槛: 说明阅读所需的前置知识

⚙️ 技术栈

​

后端

前端

数据处理

工具链

Spring Boot
Spring Security
Spring Data
Hibernate
MySQL
JWT

Vue.js
Vuex
Element Plus
Axios
Vue Router

HanLP
JSoup
ECharts
EPUB Parser

JDK
Maven
Lombok
Node.js
npm

​

后端技术详情

  • 基础框架: Spring Boot 2.7.12 - 简化Spring应用开发的框架

  • 安全框架: Spring Security 5.7.8 - 提供认证、授权和保护机制

  • 数据持久层:

    • Spring Data JPA 2.7.12 - 简化数据库访问

    • Hibernate ORM 5.6.15 - 对象关系映射框架

    • MySQL 8.0.33 - 数据库系统

  • API安全:

    • JWT (JSON Web Token) 0.11.5 - 无状态会话管理

    • BCrypt - 密码加密哈希算法

  • 文档解析:

    • JSoup 1.16.1 - HTML解析库

    • EPUB Parser 3.1 - 电子书格式解析

  • 自然语言处理:

    • HanLP portable-1.8.4 - 汉语言处理包

    • 自定义分词和摘要算法

前端技术详情

  • 核心框架:

    • Vue.js 3.2.47 - 渐进式JavaScript框架

    • Vuex 4.0.2 - 状态管理模式和库

  • UI组件:

    • Element Plus 2.3.5 - 基于Vue的桌面端组件库

    • 自定义组件和样式

  • 路由: Vue Router 4.1.6 - 官方路由管理器

  • HTTP客户端: Axios 1.4.0 - 基于promise的HTTP客户端

  • 可视化: ECharts 5.4.2 - 数据可视化库

开发环境与工具

  • JDK: Oracle JDK 11.0.21 (LTS版本)

  • 构建工具: Apache Maven 3.8.8

  • 前端包管理: Node.js 16.20.1 + npm 8.19.4

  • 开发工具:

    • IntelliJ IDEA 2023.1 - 后端开发

    • Visual Studio Code 1.82.0 - 前端开发

  • 代码简化: Lombok 1.18.26 - 减少Java模板代码

  • 版本控制: Git 2.40.1

🏗️ 系统架构

数据存储

文本处理

返回分析结果

返回数据

前端 Vue.js

后端 Spring Boot

MySQL数据库

NLP处理模块

🚀 快速开始

📋 系统要求

  • ☕ Java 11.0+ (推荐使用JDK 11.0.21)

  • 🟢 Node.js 16+ (推荐使用16.20.1)

  • 🐬 MySQL 8.0+

  • 🏗️ Maven 3.6+

🔧 安装步骤

​

1. 配置数据库

​

  1. 配置数据库

# 创建数据库和表结构
mysql -u root -p < sql/schema.sql
​
# 可选:导入示例数据
mysql -u root -p < sql/sample_data.sql

​

2. 配置后端

  1. 配置后端

cd backend
# 修改application.properties中的数据库连接信息
mvn clean install

3. 启动后端服务

​

  1. 启动后端服务

mvn spring-boot:run

​

4. 安装和启动前端

  1. 安装和启动前端

cd ../frontend
npm install
npm run serve

​

5. 访问应用

​

打开浏览器访问 http://localhost:8081 📱 使用流程

​

步骤1
登录/注册

步骤2
上传小说

步骤3
等待处理

步骤4
浏览分析

步骤5
保存/分享

👤

📤

⏳

📊

💾

​

🎯 性能指标

  • 📦 支持单文件最大150MB (约300万字)

  • ⚡ 平均处理速度: 100万字/5分钟

  • 📈 摘要准确率: >85% (基于人工评估)

🔮 版本历史

  1. 打开浏览器访问 http://localhost:8081

  • v0.9.0 (2025-04-14): 基础版发布

    • 完成基础架构搭建

      • 后端: Spring Boot 2.7.12 + Spring Security 5.7.8 + JPA

      • 前端: Vue.js 3.2.47 + Element Plus 2.3.5

      • 数据库: MySQL 8.0.33

    • 实现用户认证系统

      • JWT令牌认证(使用jjwt 0.11.5)

      • 基于BCrypt的密码加密

      • 角色权限控制

    • 开发管理员后台

      • 仪表盘数据统计

      • 用户管理界面

      • 小说管理界面

    • 构建基础UI组件

      • 响应式页面布局

      • 动态主题支持

    • 实现核心业务流程

      • TXT/EPUB解析

      • 章节识别算法

    • 优化系统安全性

      • CORS配置

      • XSS防护

📝 贡献指南

我们欢迎各种形式的贡献,包括但不限于:

  • 🐛 提交Bug报告和功能请求

  • 📚 改进文档

  • 💻 提交代码修复或新功能

  • 🔍 分享使用体验和建议

编码规范

  • 后端代码遵循Google Java代码规范

  • 前端代码遵循Vue.js风格指南

📜 许可证

版本历史

  • v0.9.0 (2025-04-14): 基础版发布

许可证

本项目采用MIT许可证。详见 LICENSE 文件。

📞 联系方式

  • 项目维护者: 七七


​

用❤️构建 | MIT许可证

​


动物装饰