一种基于网络爬虫的运维方案推荐系统及方法与流程

文档序号:15999828发布日期:2018-11-20 19:18阅读:1134来源:国知局

本发明涉及智能交通运维系统领域,特别是一种基于网络爬虫的运维方案推荐系统,以及使用上述基于网络爬虫的运维方案推荐系统的推荐方法。



背景技术:

20世纪50年代以来,随着计算机技术的快速进步,智能交通系统(ITS)迈入飞速发展的进程,智能交通系统所涉及的领域越来越广,逐步成为提高城市交通管理水平的一个重要途径。与此同时,大量的智能交通设备被投入使用,这些设备能否正常运行直接决定了智能交通建设的成效,这就对智能交通设备的运维工作提出了严格的要求。

智能交通设备种类繁多,包括信号机、卡口、电子警察、摄像机等几十种,并且随着科技的进步,新的智能交通设备也不断地投入到使用中。作为运维人员,面对不同种类设备出现的不同故障,往往手足无措,无法快速地获取运维解决方案,不利于减小故障带来的影响。



技术实现要素:

本发明所要解决的技术问题是针对现有技术的不足,提供一种使用爬虫增加了运维方案数据库来源,根据运维问题推荐较为准确的运维解决方案,可应用于智能交通设备运维系统中,为运维工作提供辅助的基于网络爬虫的运维方案推荐系统。

本发明所要解决的另一个技术问题是提供一种使用上述基于网络爬虫的运维方案推荐系统进行运维方案的推荐方法。

本发明所要解决的技术问题是通过以下的技术方案来实现的。本发明是一种基于网络爬虫的运维方案推荐系统,该系统包括爬虫模块、方案库管理模块和推荐系统模块;

爬虫模块,用于提取运维问题的关键字,通过构建爬虫获取目标站点的相关资讯、文章作为运维方案数据写入方案库;

方案库管理模块,用于对方案库进行基础管理和数据爬取,通过爬虫模块获取目标站点的数据并整理再写入方案库;

推荐系统模块,用于计算运维问题描述与方案的文本相似度评分,依此排序,推荐与运维问题描述相关性高的运维方案。

本发明所要解决的技术问题还可以通过以下的技术方案来进一步实现,对于以上所述的基于网络爬虫的运维方案推荐系统,该系统架构采用数据层、服务层和应用层三层架构设计,数据层采用MySQL作为数据库,采用MyBatis作为数据持久层框架;服务层使用SpringMVC实现爬虫、数据管理、相似度计算等业务功能,对接数据层,并处理应用层的请求;应用层负责发起Http请求,对服务层返回的结果进行解析展示。

本发明所要解决的技术问题还可以通过以下的技术方案来进一步实现,对于以上所述的基于网络爬虫的运维方案推荐系统,所述爬虫模块使用TF-IFD算法对运维问题描述提取关键字,并依此关键字通过爬虫模块获取数据。

本发明所要解决的技术问题还可以通过以下的技术方案来进一步实现,对于以上所述的基于网络爬虫的运维方案推荐系统,所述爬虫模块使用Crawler4j构建爬虫获取运维解决方案数据。

本发明所要解决的技术问题还可以通过以下的技术方案来进一步实现,对于以上所述的基于网络爬虫的运维方案推荐系统,所述推荐系统模块使用动态规划方法计算文本的相似度,并通过加权相加方法,对运维解决方案与运维问题的相似度评分,以此排序,做相关度推荐。

本发明所要解决的技术问题还可以通过以下的技术方案来进一步实现,一种基于网络爬虫的运维方案推荐方法,该方法使用以上所述的基于网络爬虫的运维方案推荐系统进行运维方案的推荐,将运维问题的描述与方案库中的标题与内容做相似度比较,并给若干个相似度计算结果赋予权重,得到相似度评分,取评分较高的前若干条做推荐;若相似度评分均低于某一阈值,则自动提取运维问题描述的关键字,使用网络爬虫从外部网络中获取相关运维解决方案,对方案库进行更新,同时做运维方案的推荐。

与现有技术相比,本发明通过爬虫模块获取目标站点的资讯、文章,保存至解决方案库;通过推荐系统模块计算文本相似度,并对运维问题描述与标题、内容的相似度加权相加作为相似度评分排序,做运维解决方案推荐;通过方案库管理模块管理运维解决方案库数据,并能够使用爬虫获取外部知识库数据,从而快速获取运维方案,应对不同种类设备出现的不同故障,减小故障带来的影响。该系统能够通过使用爬虫来增加运维方案数据库的来源,便于根据根据运维问题推荐较为准确的运维解决方案,提高了运维解决方案推荐的准确率,为运维工作提供辅助。

附图说明

图1为本发明的一种结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

参照图1,一种基于网络爬虫的运维方案推荐系统,该系统包括爬虫模块、方案库管理模块、推荐系统模块,系统架构采用三层设计:数据层、服务层和应用层,数据层采用MySQL作为数据库,MyBatis作为数据持久层框架;服务层使用SpringMVC实现爬虫、数据管理、相似度计算等业务功能,对接数据层,并处理应用层的请求。应用层负责发起Http请求,对服务层返回的结果进行解析展示。

该系统采用动态规划算法计算文本相似度,并对运维问题描述与标题、内容的相似度加权相加作为相似度评分排序,做运维解决方案推荐;推荐方法简述为:先去除待比较文本中特殊字符,如标点符号,使用动态规划算法计算问题与标题、问题与内容的相似度,对该两个相似度加权相加作为相似度评分,按相似度评分排序,取排名靠前作为推荐的解决方案。

该系统采用TF-IFD算法对运维问题描述提取关键字,并依此调用爬虫进行运维解决方案的获取。

该系统采用Crawler4j开源爬虫项目实现系统的爬虫功能,作为运维解决方案的数据获取方式。

该系统使用MySQL作为数据库,Mybatis作为持久层框架,基于SpringMVC框架开发Restful风格的接口,兼容各种支持Http协议的平台(Android、iOS、Web等)应用调用。

该系统的推荐方法包括以下步骤:用运维问题描述与解决方案库中的标题与内容做相似度比较,并给两个相似度计算结果赋予权重,得到相似度评分,取评分较高的前几条做推荐;如果相似度评分均低于某一阈值,系统则自动提取运维问题描述的关键字,使用网络爬虫获取相关运维解决方案,更新数据库的同时做运维方案的推荐。该系统采用三层设计,包括数据层、服务层、应用层,将爬虫模块、方案库管理、推荐系统三个部分结合为一个整体,提高了运维解决方案推荐的准确率,为运维工作提供辅助。

本系统功能主要包括以下3个模块。

爬虫模块:提取运维问题的关键字,通过Crawler4j构建爬虫获取目标站点的相关资讯、文章作为运维方案数据写入方案库。

方案库管理模块:对运维方案库进行基础管理(包括增加、删除、修改、查询等),数据爬取,即通过爬虫模块获取目标站点的数据并整理写入方案库。

推荐系统模块:计算运维问题描述与方案的文本相似度评分,依此排序,推荐与运维问题描述相关性高的运维方案。

具体操作介绍:

1、系统开发环境:采用Windows 10操作系统、IDEA 2017.3作为编译器、JAVA作为开发语言(其中JDK版本为1.8),集成SpringMVC 4.2.2.RELEASE框架、Junit4.10单元测试工具、Mybatis数据持久层框架、druid数据连接池、Crawler4j爬虫、lucene信息检索工具库、Maven等框架或工具完成系统开发环境搭建;

2、系统架构设计:系统开发按照MVC设计规范设计并编写,分为dao、service、controller三层,其中dao由Mybatis框架实现,service主要调用dao层的接口方法实现业务逻辑,controller层使用@RequestMapping注解规定对应的接口地址、请求方式、返回数据等信息,使用@ResponseBody注解实现Restful风格的接口,通过@Service注解调用service层方法,实现接口功能。

3、爬虫模块功能:爬虫模块基于Crawler4j开源爬虫项目开发,主要包括WebCrawler的开发与CrawlerController的开发,其中WebCrawler负责对站点的解析,需实现其shouldVisit(站点配置)、visit(解析处理)的方法;CrawlerController负责调用WebCrawler,控制爬虫的运行相关参数;

4、推荐系统功能:推荐系统采用动态规划算法计算文本相似度,并对运维问题描述与标题、内容的相似度加权相加作为相似度评分排序,做运维解决方案推荐;

5、运维问题关键字提取:使用lucene实现TF-IFD算法对运维问题描述提取关键字;

6、系统部署:通过Maven工具打包为war格式的程序,在Window Server 2012 、JDK、Tomcat 8.0环境下运行。

本申请中的爬虫是指网络爬虫,是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。

TF-IDF算法:

TF:词频(Term Frequency),即在分词后,某一个词在文档中出现的频率。

IDF:逆文档频率(Inverse Document Frequency)。在词频的基础上给每个词分配权重,如果有三个词的词频一样,但这并不代表这三个词在这篇文章的重要性是一样的,因此还要给这三个词分配权重,IDF就是某个词在在整个语料库中少见但是在这边文章中多次出现,很可能反映了此文章的特性,因此IDF就高,等于语料库中文档总数比上包含改词的文档数的对数。

某个词对文章的重要性越高,它的TF-IDF值就越大。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1