三、 研究的基本思路和方法、技术路线、实验方案及可行性分析
(一) 基本思路和方法
1. 数据库的建立
确定模块与模块之间的关系,遵循数据库设计的原则,设计好数据库表、字段,并且要方便后期的维护。
2. 系统框架的搭建
在系统中搭建Python环境,下载PyCharm 集成开发工具,配置服务器,为服务器设计后台系统以方便管理。
3. 网页前端的设计
通过HTML5及相关技术设计新闻定制系统的页面,进行排版,优化页面显示,提高阅读质量。
4. 系统各大功能模块的开发
本系统的主要实现功能模块包括:
1) 实现后台管理权限验证模块。
2) 实现新闻图文分类模块。
3) 实现新闻爬取模块。
4) 实现用户行为分析模块。
5) 实现搜索功能模块。
(二) 技术路线
1) 操作系统:Windows 10、Ubuntu16.04
2) 系统开发IDE:PyCharm、Sublime Text
3) 系统开发语言:Python(flask框架)
4) 数据库:MySQL
5) Web服务器:Python搭建
6) 通讯协议:HTTP、WebSocket
(三) 实验方案
1. 后台管理权限验证模块实现方案
此模块关系到系统整体的安全性,首先在数据的储存和交互上,对数据表密码字段、Cookie、Session等信息要加密处理,并且需要过滤用户输入,防止SQL注入等漏洞。其次要对后台主要功能模块的入口作权限验证。
2. 新闻图文分类模块实现方案
用HTML5实现新闻菜单分类,可以自主添加想要的新闻分类自菜单,设计新闻显示div模板,使每条新闻排列齐整显示。
3. 实现新闻爬取模块
通过Python爬虫对新闻进行爬取,将新闻存储到Mysql数据库中或存储到服务器中。
4. 实现用户行为分析模块
在用户登录之后,通过对用户点击查看新闻的种类及数量进行记录分析,以及设置“不感兴趣”等互动按钮,收集用户的浏览新闻数据,精确定位用户的喜好,利用knn算法做相似度高的新闻推荐。
5. 搜索功能模块实现方案
提供关键字搜索功能,通过python中的MySQLdb库对数据库进行访问,从爬取的新闻中找到与关键字相似内容的新闻,显示到页面上呈现给用户。
(四) 可行性分析
1. 社会技术可行性
该系统提供新闻定制推荐功能,对注册过的用户进行定制化推送,在当今信息爆炸的社会中,能够为人们过滤无用信息,提高浏览信息效率,合理管理信息,满足了绝大多数人的需求,从需求上来讲是可行的。
2. 技术可行性
本系统的开发平台为Windows,软件开发平台为PyCharm,使用Python语言进行编写,编写调试成功后再部署到云服务器上,服务器系统为ubuntu16.04,本人学习过python语言,对其有一定的了解,对搭建服务器有一定的心得,学过HTML5,技术上可行。
四、 研究计划及进度安排
第一阶段:(2017.12.28—2018.01.02)进行题目的确定,开题报告和任务书的撰写。
第二阶段:(2018.01.3—2018.02.01)系统需求分析与系统概要设计。
第三阶段:(2018.02.02—2018.04.14)系统各功能模块编码实现,以及进行最终的测试。
第四阶段:(2018.04.15—2018.04.25)毕业论文撰写、定稿,完善系统。
第五阶段:(2018.04.26—2018.05.10)完成电子讲稿,准备毕业设计答辩。
|