# web_works **Repository Path**: jiedm/web_works ## Basic Information - **Project Name**: web_works - **Description**: 文献分析与选题建议系统是一个基于AI技术的平台,通过自动化分析文献内容,辅助研究人员进行选题决策。系统采用前后端分离架构,结合AI分析能力,为用户提供文献处理、关键词提取、研究趋势分析和选题可行性评估等功能。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2025-04-14 - **Last Updated**: 2025-08-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 文献分析与选题建议系统项目目录结构说明 ## 1. 项目概述 文献分析与选题建议系统是一个基于AI技术的平台,通过自动化分析文献内容,辅助研究人员进行选题决策。系统采用前后端分离架构,结合AI分析能力,为用户提供文献处理、关键词提取、研究趋势分析和选题可行性评估等功能。 ## 2. 目录结构总览 ``` / ├── ai/ # AI分析组件 │ ├── analysis.py # 关键词提取等NLP功能 │ ├── keyword/ # 关键词分析模块 │ │ ├── extractor.py # 关键词提取器 │ │ └── wordcloud.py # 词云生成工具 │ └── trend/ # 趋势分析模块 │ ├── analyzer.py # 趋势分析器 │ └── visualizer.py # 趋势可视化工具 │ ├── backend/ # 后端服务 │ ├── api/ # API接口定义 │ │ ├── literature.py # 文献相关接口 │ │ ├── analysis.py # 分析相关接口 │ │ └── project.py # 项目相关接口 │ ├── models/ # 数据模型 │ │ ├── paper.py # 文献模型 │ │ ├── keyword.py # 关键词模型 │ │ └── project.py # 项目模型 │ ├── services/ # 业务逻辑服务 │ │ ├── literature.py # 文献处理服务 │ │ └── proposal.py # 选题评估服务 │ ├── utils/ # 工具函数 │ │ ├── auth.py # 认证工具 │ │ └── file.py # 文件处理工具 │ ├── app.py # Flask应用入口 │ └── config.py # 配置文件 │ ├── database/ # 数据库相关 │ ├── migrations/ # 数据库迁移脚本 │ ├── schema.sql # 数据库表结构 │ └── init.py # 数据库初始化脚本 │ ├── frontend/ # 前端源码 │ ├── public/ # 静态资源 │ ├── src/ # 源代码 │ │ ├── assets/ # 资源文件 │ │ ├── components/ # 组件 │ │ │ ├── literature/# 文献相关组件 │ │ │ ├── analysis/ # 分析相关组件 │ │ │ └── project/ # 项目相关组件 │ │ ├── views/ # 页面视图 │ │ │ ├── Home.vue # 首页 │ │ │ ├── Literature.vue # 文献管理页 │ │ │ ├── Analysis.vue # 分析页面 │ │ │ └── Project.vue # 项目管理页 │ │ ├── router/ # 路由配置 │ │ ├── store/ # 状态管理 │ │ ├── utils/ # 工具函数 │ │ ├── App.vue # 根组件 │ │ └── main.js # 入口文件 │ ├── package.json # 依赖配置 │ └── vite.config.js # 构建配置 │ ├── docs/ # 项目文档 │ ├── 需求规格说明书.docx # 需求文档 │ ├── 概要设计说明书.md # 设计文档 │ ├── 系统架构图.md # 架构图 │ ├── 接口文档.md # API接口文档 │ ├── 项目目录结构说明.md # 本文档 │ └── 原型设计/ # UI原型 │ ├── 文献分析模块.fig # 文献分析模块原型 │ └── 协作平台模块.fig # 协作平台模块原型 │ ├── tests/ # 测试代码 │ ├── unit/ # 单元测试 │ └── integration/ # 集成测试 │ ├── docker/ # Docker配置 │ ├── Dockerfile # 应用容器配置 │ └── docker-compose.yml # 容器编排配置 │ ├── .gitignore # Git忽略文件 ├── README.md # 项目说明 └── requirements.txt # Python依赖 ``` ## 3. 核心模块说明 ### 3.1 AI分析组件 (`/ai`) 负责文献内容的智能分析,包括关键词提取、研究趋势分析等功能。 | 文件/目录 | 功能描述 | |----------|--------| | `analysis.py` | AI分析的主要入口,整合各分析功能 | | `keyword/` | 关键词分析相关功能 | | `trend/` | 研究趋势分析相关功能 | ### 3.2 后端服务 (`/backend`) 提供RESTful API服务,处理前端请求,协调AI分析组件和数据库操作。 | 文件/目录 | 功能描述 | |----------|--------| | `api/` | API接口定义,按功能模块分类 | | `models/` | 数据模型定义 | | `services/` | 业务逻辑服务 | | `utils/` | 工具函数集 | | `app.py` | Flask应用入口 | | `config.py` | 配置文件 | ### 3.3 数据库 (`/database`) 管理系统数据存储,包含数据库结构定义和初始化脚本。 | 文件/目录 | 功能描述 | |----------|--------| | `schema.sql` | 数据库表结构定义 | | `migrations/` | 数据库迁移脚本 | | `init.py` | 数据库初始化脚本 | ### 3.4 前端应用 (`/frontend`) 基于Vue 3和Element Plus的用户界面,提供交互式操作体验。 | 文件/目录 | 功能描述 | |----------|--------| | `src/components/` | UI组件,按功能模块分类 | | `src/views/` | 页面视图 | | `src/router/` | 前端路由配置 | | `src/store/` | 状态管理 | ## 4. 技术栈说明 ### 4.1 前端技术栈 - **框架**: Vue 3 - **UI组件库**: Element Plus - **构建工具**: Vite - **状态管理**: Vuex/Pinia - **路由**: Vue Router ### 4.2 后端技术栈 - **框架**: Python Flask - **API设计**: RESTful API - **认证**: JWT (JSON Web Token) - **数据库ORM**: SQLAlchemy ### 4.3 AI组件技术栈 - **自然语言处理**: - jieba (中文分词) - TF-IDF (关键词提取) - **知识图谱**: - NetworkX (图形分析) - Matplotlib (可视化) ### 4.4 数据存储 - **数据库**: MySQL 8.0 - **主要表结构**: - papers (文献数据) - keywords (关键词数据) - projects (选题项目) - team_members (团队成员) ## 5. 模块间关系 ``` +---------------------------+ +---------------------------+ | 文献检索与分析模块 | | 选题建议与协作平台模块 | +---------------------------+ +---------------------------+ | | | | | +---------------------+ | | +---------------------+ | | | LiteratureProcessor | | | | ProposalEvaluator | | | +---------------------+ | | +---------------------+ | | | | | | | | v | | v | | +---------------------+ | | +---------------------+ | | | KeywordAnalyzer |<--|-----|->| ProjectManager | | | +---------------------+ | | +---------------------+ | | | | | | | v | | | | +---------------------+ | | | | | TrendAnalyzer | | | | | +---------------------+ | | | | | | | +---------------------------+ +---------------------------+ | | v v +----------------------------------------------------------+ | 数据访问层 | +----------------------------------------------------------+ | | | +----------------+ +----------------+ +----------------+ | | | papers表 | | keywords表 | | projects表 | | | +----------------+ +----------------+ +----------------+ | | | +----------------------------------------------------------+ ``` ## 6. 部署架构 系统采用Docker Compose进行容器化部署,包含两个主要容器: ``` +--------------------------------------------------+ | Docker Host | | | | +--------------------+ +---------------------+ | | | | | | | | | 应用容器 | | 数据库容器 | | | | (Flask + Vue) | | (MySQL 8.0) | | | | | | | | | +--------+-----------+ +-----------+---------+ | | | | | +----------|--------------------------|-------------+ | | v v +-------------------+ +------------------------+ | 外部文献API接口 | | 持久化存储卷 | +-------------------+ +------------------------+ ``` ## 7. 开发与部署流程 ### 7.1 开发环境配置 1. 克隆代码库 2. 安装前端依赖: `cd frontend && npm install` 3. 安装后端依赖: `pip install -r requirements.txt` 4. 初始化数据库: `python database/init.py` 5. 启动后端服务: `python backend/app.py` 6. 启动前端开发服务器: `cd frontend && npm run dev` ### 7.2 生产环境部署 1. 构建前端: `cd frontend && npm run build` 2. 使用Docker Compose部署: `docker-compose up -d` ## 8. 文档说明 | 文档名称 | 用途 | |---------|------| | 需求规格说明书.docx | 详细描述系统需求和功能规格 | | 概要设计说明书.md | 描述系统设计方案和技术架构 | | 系统架构图.md | 展示系统各组件间的关系和数据流 | | 接口文档.md | 详细描述API接口规范 | | 项目目录结构说明.md | 本文档,说明项目文件组织 | ## 9. 总结 本文档详细描述了文献分析与选题建议系统的项目目录结构,包括各模块的功能说明、技术栈描述和组件关系图。通过合理的目录组织和模块划分,系统实现了高内聚低耦合的设计原则,便于开发、维护和扩展。