基于爬虫技术的烟草行业网络舆情监控系统的设计与实现
发布时间:2021-07-21 23:55
烟草行业在中国是一种备受争议的专卖专营特殊行业,行业的各种行为极易引发舆情讨论。烟草行业在发展过程中一直很重视对网络舆情的监控,但是行业内部对网络舆情的监测大部分还处于人工模式。本文设计并实现了一个烟草行业网络舆情监控系统,利用网络爬虫技术在采集、处理海量数据方面的优势,以实现对涉烟网络舆情全方位的抓取,并提供给用户可视化的舆情信息查询、主题追踪、统计分析等监控服务。本文首先对网络舆情监控研究现状,网络爬虫、自然语言处理、机器学习技术进行考察分析调研。其次,本文对烟草行业网络舆情监控系统的采集对象、需求进行分析,并根据需求及业务流程,进行了系统总体架构设计、数据库设计、子系统设计。本系统主要分为舆情采集、舆情应用、系统管理三个子系统。在系统实现部分,本文按照各子系统的实现进行说明。包括选用基于Python语言的Scrapy爬虫框架,自定义策略应对网站的反爬措施,运用Selenium解决了动态网页数据的抓取问题;通过正则表达式、XPath选择器,配合Pandas、Numpy库进行数据清洗提取筛选;基于Jieba的中文分词构建涉烟舆情词典和词性库,自定义涉烟舆情特色关键词的提取规则;通过W...
【文章来源】:郑州大学河南省 211工程院校
【文章页数】:63 页
【学位级别】:硕士
【部分图文】:
通用网络爬虫工作流程图
10图 2.2 聚焦爬虫工作流程图2.2 Python 语言Python 语言是一种开源的、面向对象的解释性的语言,语法简便易懂、条理逻辑清晰、代码灵活易用、具有很高的可扩展性,可以实现很多功能。Python也被称为胶水语言,具有丰富和强大官方及第三方库、大量的 Web 设计框架,能快速生成程序的原型,能够把用其他语言尤其是 C、C++等底层语言制作的各种模块轻松的联结在一起,利用他们已有的库来做很多扩展,使开发者的注意点可以集中在自己要做的事情上,提高程序运行效率。Python 语言对其他语言有很好的扩展性,是一款简单易用的工具性语言[14][14]。网络爬虫是一个典型的多任务处理场景,多线程或进程会并发的爬行更提高程序效率,提升整个系统下载和分析能力。Python 在网络爬虫方面的优势是:它具有多种爬虫框架,成熟稳定的多线程爬虫进程模型,可以简单方便高效的下载网页。对于网页的抓取,Python 和 C#
图 2.3 Scrapy 架构Scrapy 的数据流过程为[17][17]:(1)首先引擎打开一个网站,找到处理该网站的爬虫,并向该爬虫请求始的 URL 地址,获取地址后请求调度器进行调度;(2)引擎向调度器请求接下来需要爬取的 URL 地址,引擎获取后将该 U通过下载器中间件转给下载器进行下载;(3)页面下载完毕后,下载器将生成的页面应答通过下载器中间件发送引擎;(4)引擎将接收到的应答,通过爬虫中间件发送给爬虫处理;(5)爬虫处理完 Response,将提取到的项目及新的 Request 给引擎;(6)引擎将爬虫返回的项目给项目管道,将新的 Request 给调度器;(7)重复以上步骤,直到调度器中没有 Request,引擎关闭网站,爬取结2.4 动态页面爬取
本文编号:3296020
【文章来源】:郑州大学河南省 211工程院校
【文章页数】:63 页
【学位级别】:硕士
【部分图文】:
通用网络爬虫工作流程图
10图 2.2 聚焦爬虫工作流程图2.2 Python 语言Python 语言是一种开源的、面向对象的解释性的语言,语法简便易懂、条理逻辑清晰、代码灵活易用、具有很高的可扩展性,可以实现很多功能。Python也被称为胶水语言,具有丰富和强大官方及第三方库、大量的 Web 设计框架,能快速生成程序的原型,能够把用其他语言尤其是 C、C++等底层语言制作的各种模块轻松的联结在一起,利用他们已有的库来做很多扩展,使开发者的注意点可以集中在自己要做的事情上,提高程序运行效率。Python 语言对其他语言有很好的扩展性,是一款简单易用的工具性语言[14][14]。网络爬虫是一个典型的多任务处理场景,多线程或进程会并发的爬行更提高程序效率,提升整个系统下载和分析能力。Python 在网络爬虫方面的优势是:它具有多种爬虫框架,成熟稳定的多线程爬虫进程模型,可以简单方便高效的下载网页。对于网页的抓取,Python 和 C#
图 2.3 Scrapy 架构Scrapy 的数据流过程为[17][17]:(1)首先引擎打开一个网站,找到处理该网站的爬虫,并向该爬虫请求始的 URL 地址,获取地址后请求调度器进行调度;(2)引擎向调度器请求接下来需要爬取的 URL 地址,引擎获取后将该 U通过下载器中间件转给下载器进行下载;(3)页面下载完毕后,下载器将生成的页面应答通过下载器中间件发送引擎;(4)引擎将接收到的应答,通过爬虫中间件发送给爬虫处理;(5)爬虫处理完 Response,将提取到的项目及新的 Request 给引擎;(6)引擎将爬虫返回的项目给项目管道,将新的 Request 给调度器;(7)重复以上步骤,直到调度器中没有 Request,引擎关闭网站,爬取结2.4 动态页面爬取
本文编号:3296020
本文链接:https://www.wllwen.com/kejilunwen/zidonghuakongzhilunwen/3296020.html