1. 研究目的与意义
1.选题背景
以前,信息的传播往往都要在信纸上,但随着时间的推移,信息的传播开始转移至网络上。由此,社交网络应用迅速兴起,并在社会中得到广泛普及。其中,微博主要以短文本形式为主,通过用户间的关注、转发等行为即可接收并传播信息,用户间的交互行为(如点赞、评论和转发)成本极低,因而大大促进信息传播的便利性,并推动信息的接收范围呈爆炸式增长。此外, 信息的传播是一个动态过程,信息通过错综复杂的社交网络进行扩散传播的同时,存在着些虚假信息,这对于群众具有一定不良的引导性,导致舆论发酵,对于政府的形象及威望造成一定的影响。
2.意义
2. 课题关键问题和重难点
1.解决的关键问题
(1)对于微博网络舆情信息的爬取
微博网络舆情信息错综复杂,并且存在数量多,分类杂的问题,因此通过网络爬虫技术对于微博网络舆情信息进行爬取时可以采用selenium多线程异步处理。
3. 国内外研究现状(文献综述)
1.前言
近些年来,社会发展速度飞跃式增长,以互联网为基础的大数据时代来临[1]。互联网大环境让人民群众的言论得到了前所未有的自由,越来越多的群众热衷于在网络上分享自己的生活以及对于热点事件的看法[2]。网络用户表现格外的踊跃,网络舆情风起云涌,而网络舆情的安全早已变成了新型的安全方面的问题,正日益对国家的安全造成威胁[3]。
微博,作为网络舆情的载体,已经成为了人民参与网络活动的重要途径。微博中的信息不同于普通新闻网页或官方发布的通告,具有原创性、时效性、随意性、碎片性、受众广等特点[4]。微博其传播信息的主体一般由较为简短的文本和表情符号组成,除少数敏感信息外,微博平台对微博文本的具体内容不做限制,用户可以根据个人兴趣或需求发布任何消息,也可以读取、评论、点赞、分享其他用户的微博。由数据表明,越来越多的人们通过微博参与到网络热点舆论的产生和传播当中,微博在社会热点舆论中地位也越来越凸显,对微博进行舆情分析是十分必要的[5]。
4. 研究方案
系统设计方案
本课题旨在开发一个基于网络爬虫的微博舆情监测系统,具体实现的主要内容包括:
1.框架设计
基于网络爬虫的微博舆情监测系统主要采用Django框架,其设计模式借鉴了MVC框架的思想,也是分成三部分,来降低各个部分之间的耦合性。Django框架拆分的三部分为:Model(模型)、Template(模板)和View(视图),也就是MTV框架。
2.功能设计
基于网络爬虫的舆情监测系统的主要功能模块分为:用户登录模块,舆情信息采集模块,舆情预警模块,舆情推送模块,舆情分析统计模块及后台管理模块。
(1)用户登录
为了保障舆情监测系统中数据以及账户信息的安全性,需要对进入系统的用户身份进行合理性的验证。
(2)舆情信息采集
系统能够对通过技术手段对不同的微博数据进行采集。
(3)舆情预警
读取CSV文件,每个CSV文件存储一个热搜话题微博下评论数据,对数据进行清洗去重之后写入数据库,切分中文词汇后只用自定义词典过滤掉单音节词,再根据语料库对每个词语进行情感值判断,对情感值进行汇总后求平均值,对于消极情感的热缩产生预警。
(4)舆情推送
系统管理员舆情预警的数据信息,推送到相关舆情管理人员。
(5)舆情分析统计
能够进行系统的话题可视化分析、微博的趋势信息进行分析。
(6)后台管理
系统对微博的数据进行维护。
3. 数据库设计
在微博中,每个用户作为独立唯一的节点,用户与用户之间通过关注行为来建立社交关注网络的边。同时,用户通过社交网络平台可以发布各种信息,当一个用户对信息源用户发布的微博信息进行评论或转发时,即完成了一次信息沿用户节点进行的传播,视为构建了信息传播网络的边。因此,用户这一实体内部存在着关注关系,而用户和微博之间存在着转发和评论的关系。通过网络爬虫这一数据获取技术,我们可以得到上述的关系数据,并将其存储到数据库中,以便后续的舆情监测研究工作。而数据库的数据存取功能,提供了与各功能模块之间数据交互功能。通过设置特定的存储接口和数据表结构,使得功能模块独立进行数据存取。系统决定采用MySQL数据库完成系统中数据的储存。
数据表类别及功能如表4-1所示。
表 4-1 数据表设计
| 类别 | 对应表 | 功能 |
| 榜单信息表 | bangdan | 存储的是从微博移动热搜榜爬取到的热门话题 |
| 管理员表 | gangliyuan | 存储管理员信息 |
| 评论内容表 | pinglun | 存储的是从每条热搜对应的置顶微博中爬取到的信息 |
| 舆情负责人 | fuzeren | 存储舆情负责人信息 |
| 微博趋势表 | qushi | 存储的是每个热搜下置顶微博随着一定时间变化的转发、评论、点赞量 |
| 微博详情表 | | 存储的是每个热搜下置顶微博的内容 |
| 通知信息 | tongzhi | 存储舆情通知信息 |
| 博主信息表 | bozhu | 存储的是每个热搜下热门微博的发布者 |
研究方案:
1.需求分析阶段
确定软件开发可行性后,需要对软件需要实现的各个功能进行详细需求分析。需求分析阶段在整体阶段中极其重要,为整个软件项目的开发打下夯实的基础。软件需求也是在软件开发过程中不断变化和深入的,因此,我们必须定制需求变更计划来应付这种变化,以保护整个项目的正常进行。此阶段主要应用文献法。
2.软件设计阶段
根据需求分析的结果对整个微博舆情监测系统进行设计,包括总体设计和详细设计,此阶段主要应用实践研究法。
3.软件开发阶段
该阶段是将软件设计的结果转化为程序代码,在程序编码中一定要制定同一并且符合标准的编写规范,提高微博网络舆情监测系统的运行效率。此阶段主要应用实践研究法。
4.软件测试阶段
在软件设计完成后,需要对微博网络舆情监测系统进行严密的测试,一旦发现存在的问题,一定要对其进行纠正。整个测试阶段分为单元测试,组装测试,系统测试,测试方法主要用白盒测试和黑盒测试。此阶段主要应用实践研究法。
5. 工作计划
2022-11-28~2022-12-11:进行毕业设计的题目的选择并确定,查阅微博舆情监测相关中英文资料。
2022-12-12~2022-12-18:与导师对选题内容进行沟通交流并完成课题总体规划。
2022-12-19~2022-12-25:导师下发毕业设计(论文)任务书,学生根据导师的要求进行“基于网络爬虫的微博舆情监测系统的设计与实现”相关的外文翻译,并由选题列出开题报告大纲。
