# CSharpNewsSystem **Repository Path**: SalHeLi/csharp-news-system ## Basic Information - **Project Name**: CSharpNewsSystem - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-05-17 - **Last Updated**: 2021-05-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 新闻浏览系统 ## 概览 本系统旨在自动收集新闻内容,并能够按需爬取所需的内容加入到系统中去。用户可以通过我们发布的网站浏览新闻,可以注册登录账号以保留用户的个人信息以及浏览记录,系统能够根据用户的浏览记录为其推荐喜好内容等等。同时提供一个后台管理端,管理员可以在后台对爬虫进行调整以满足爬取需求;也可以在后台发布、调整新闻内容等。 ## 系统整体功能 ### 模块划分 系统根据功能所需大致分为以下几个模块: 1. 爬虫模块 2. 后台管理模块 3. 用户浏览模块 ![新闻浏览系统](\img\新闻浏览系统.png) #### 爬虫模块 如上图所示,爬虫模块提供了以下功能以满足本系统需要: 1. 爬取新闻 2. 数据处理、持久化 即爬虫会自动将爬取到的新闻数据进行预处理——去重、去除无用数据等,然后将新闻内容存储到本系统统一的中心数据库,作为本系统的内容数据库。 3. 新闻分类 爬虫自动根据访问的内容,从爬取源获取与新闻内容分类有关的信息,以作为新闻的分类信息,随着新闻一并存入数据库。 4. 参数调整 可以为爬虫设定参数,使其可以根据设定爬取一定量、满足一定条件的新闻内容。 #### 后台管理模块 1. 管理员登录 2. 用户管理 1. 增加、修改、移除用户 2. 增加、修改、移除管理员 3. 内容管理 1. 分类管理 2. 新闻管理 1. 人工发布新闻内容 2. 调整新闻内容 3. 删除新闻 #### 用户模块 1. 浏览模块 1. 登录/注册 2. 收藏新闻 3. 历史记录 2. 推荐模块 1. 猜你喜欢 根据用户的新闻浏览历史记录,推测出用户感兴趣的其他新闻内容,并向其推荐这些新闻内容。同时,用户可以将被推荐到的内容标记为不喜欢内容,系统下一次便会尽可能的不推荐同类内容。 2. 用户群体预测 根据用户的新闻浏览历史记录,推测出用户的群体——用户可能是一个政治爱好者,也可能是一个经济爱好者,或者是一个体育爱好者。 3. 检索模块 1. 按分类检索 根据新闻的分类去检索新闻。 2. 按关键字检索 可以输入关键搜索相关的新闻。 ### 模块整体架构设计 ![image-20210517144303205](\img\整体架构.png) 1. 管理员可以与爬虫模块进行交互,对爬虫模块进行参数设置,并可以观察爬取状态。 2. 爬虫将爬取到的数据存储到新闻数据库中。 3. 用户与浏览模块通过Web UI进行交互,而用户模块通过与新闻数据库以及用户数据库打交道,给出相应的响应。 4. 推荐模块根据用户浏览记录以及新闻信息,为其推荐相关内容。 5. 检索模块根据新闻内容,结合用户的查询要求,给出检索结果。