APP下载

面向微博爬虫系统的分析

2013-08-15王艳阁

河南科技 2013年4期
关键词:爬虫网页页面

王艳阁

(中原工学院 计算机学院,河南 郑州 450000)

1 背景和意义

互联网传播信息的快速传播,因此微博给人们的工作、生活带来了方便,但同时也给虚假信息和网络暴力的迅速传播等恶意、违法行为提供了滋生的温床。即使公众媒体和信息管理部门一直呼吁广大网民规范自己的上网行为,维持网络秩序,但是被有些人别有用心的传播、制造网络谣言,形成非理性非合法的网络舆论氛围,危害正常的生活、社会秩序。因此,不能仅仅依靠于网民的自律行为,需要网络信息监管部门对网络言论进行管理和监控,对网络的舆情进行研究和分析,完善网络舆情监控管理机制,培育高雅文明、开放成熟的正确舆论。

目前的互联网世界已经进入到了自媒体时代,而这其中不可不提的一个关键词便是微博。作为互联网2.0时代最重要发明之一,它不仅仅把传统媒体从纸上变到了电子媒介上,更重要的是它彻底改变了传播的路径。在这个微博时代,人人都是记者和编辑,每一个人都可以在遇到新闻突发事件的时候,进行新闻的采集和传播。微博使广大人民群众参政议政有了更好的渠道和平台,这是好的一面。但同时我们也应该看到其另一面,社会中的人素质有高低,认识社会、判断社会的能力也有高低,不同阶层的人、不同素质修养的人,都会利用微博做事情,而做出来的事情就会有着不同的效果,这就使得微博容易滋生大量的舆情舆论信息,这些信息一旦引发了不合常理的群体行为,将导致社会正常生活受到严重不良影响。因此,如何在大量信息中查找、浏览有用的舆情资讯,进行分析判断、以有效的地控制和规范网络信息的传播是亟需研究解决的问题。

2 研究现状

目前智能挖掘的运用和机器学习识别是网络舆情系统的核心,用来挖掘分析网络上的大量的时刻变化的网络舆情信息。处理在人工技术手段下无法解决对大量、时刻变化网络内容的及时监控和管理。常用关键技术如下:

第一是项智能的无需人为干预、自动获取互联网信息的数据挖掘和信息搜索技术。以前的网络爬虫从一个或若干初始网络的URL开始,获得初始网络上的URL,在爬取网络的时候中,不停的从当前网络上抓取新的URL放入队列,一直到满足系统的部分停止条件为止。全部被其抓取的网络将会自动被系统保存,以判断抓取的页面是列表页还是内容页。如果是列表页,则调用相应的列表页模板进行分析研究,新的URL添加到未下载URL队列中,等待下载;如果是内容页,则把它写入文件。

第二是信息提取与检索。对于网络爬虫抓取的大量信息,用前期的检索引擎并且把自然与然分析技术和数据攫取技术结合起来进行对信息的提取。内存中存取的数据是爬虫在爬取目录下采集的,这些数据是爬虫定期搜索获取的。保存页面中的有价值的信息,并且把页面中的征文和标题部分惊醒区别的技术是,网页站点智能抓取技术。调用有用的插件把内容提取出来是分析线程的主要任务,按照相应的表达式所表达的意思,按照一定的周期把数据存入到文件中。

第三是自动摘要的形成,也就是机器通过智能的方法把文档自动形成摘要的过程和技术方法。这种方法是提取信息的重要手段,同时在提取的过程中这种技术综合了机器识别和挖掘数据技术。这种方法有基于理解和基于统计这两种方式,基于理解的文摘是根据线索词词频、词典、句子和词的统计方法进行模式匹配提取摘要;而基于统计的方式则是利用语义句法、语义知识等知识,在对文章的内容进行理解的基础上提取摘要。

第四是主题追踪与检测。这种技术追踪一些目标主题的的各种信息以及与之有关的信息片段。

以上4中技术就可以满足当前的热点事件的追踪、专题特别报道、新事物的快速识别等。主题检测是从各个信息集合的片段中检测出新的主题,并且是实时在线的。

3 研究目标

微博舆情系统是微博最为监控的主题,与比较重要的主题论坛信息进行对比分析,从而掌握网络舆情的发展的新动向。话题聚类、数据采集和微博舆情预测是微博淤青监控的主要部分,第一数据采集的内容主要是使用爬虫自动收集页面信息。爬虫模块是网页站点信息采集的重要工具,它的作用是非常重要的,也是网络微博最初数据的获取来源。为了给用户制定相应的爬行策略,爬虫模块提供一定的抓取任务和爬虫的运行方法,从而对网站页面的信息抓取达到给用户方便快捷的操作平台。微博舆情系统采用的是聚焦式网络爬虫。传统网络爬虫和聚焦网络爬虫的区别在于,通过配置敏感信息规则和系统自学习功能,根据系统事先定义的与舆情相关的敏感关键词集合,如何剔除无关的搜索信息过滤掉不符用户定制的主题主题,是页面算法的重要功能实现,除了实现以上功能外,还要把有用的数据信息、有效地链接信息等用户需要的数据采集到放到URL队列中。微博爬虫的基本方法就是按照原定的抓取策略,确保与主题有关的信息多爬行、多下载,并分析计算下一个将要被获取的连接于用户定义主题的关系度,尽最大可能少的下载无用页面。

与通用网络爬虫相比,微博爬虫的研究目标是以下三个方面:(1)如何描述或定义抓取网页目标。(2)怎样排列待爬行URL的具体次序。微博爬虫根据已经下载页面的相关联程度度,怎样将页面放到优先级队列中是根据该页面的子页面与用户定义的相关度来决定的。有了用户定义的相关度,微博爬虫的爬行策略就不再是简单的深度或者广度优先了,而是根据相关度的大小,最先访问相关度大的网页连接。(3)怎样判断一个网页是否和策略有关系。挖取数据技术可以实现应经在队列等爬行的连接和已经获取的网页并且可以获取具体的信息内容。因此,主体不同的爬虫之间的主要区别二就是目前爬行页面的主题相关度。

4 研究内容及创新点

4.1 研究内容

微博爬虫抓取策略是聚焦式定向抓取,根据需要对相应的网页或者论坛的信息进行获取,所以域名或者网站的条件需要过滤,并且条件还需要特定的设置。如baidu.com就可以设置成过滤条件,那么爬虫收集网页信息的时候就只会收集百度的网页信息。对网站过滤、关键词过滤、搜索工具过滤和最初连接的个数过滤等是聚焦式爬虫的工作方式。用户指定的网页在全网的连接站点进行抓取。但是聚焦式爬虫的回应是在前期完善的搜索平台上进行操作,如在百度或者谷歌上面来获取一些链接并和本主题关系度较大。在爬行的时候首先从常用的搜索引擎中获得一些网站链接,然后从中开始抓取,抓取的时候也是相关度越来越高,直到和用户定义的条件满足为止,到达最深的爬行度的时候才结束本次爬行过程。为了提高爬行的精度,微博爬虫采用先对与用户定义相关的页面进行连接,而不像普通爬虫那样对所有的页面的进行爬行,对用户的相关度进行分析后再处理,这样爬行的精度就很自然的提高了,同时爬行的结果也与用户与期待的结果相关的也大,达到了双优的结果,即使有少数遗漏了,也能让大部分的用户满意。从以上可以看出如何分析用户提出定义的主题的相关度是本微博爬虫的关键技术,对用户提出的关键词进行分析是实现的最简单的方法,再深一步的话就可以对主题所提到的概念和语义的分析,达到这一层次是比较精深的。

怎么对用户定义的关键词的主题相关度分析呢,大概的主要思路下面具体阐述:第一要确定用户提出的关键词,这个关键词要有一定的权重还要能够代表受限制的领域。第二利用空间向量的模型算法,来算出页面的相关程度,从而确定主题的相关度的取舍与用户定义主题相关度大的网络页面。普通爬虫是概念和主题爬虫的基础,两者都是在普通爬虫功能上进行扩充,在整个基于概念和基于关键词的主题爬虫系统全是以普通爬虫作为基础,而在这基础上进行功能上的扩充,主题分析相关度,优化中子模块,主题确立模块,排序模块就是页面处理的整个过程。两种方法的主要不同之处在于的怎么表示。其系统工作具体流程如下:第一爬行模块搜索网络页面;第二爬行模块对所爬取的网页进行分析,调用相关的算法模块;第三根据检测的结果对不同的结果进行分析研究;第四对正在数据库里等待处理的网络连接进行调用返回到第一步,一直到没有新的网络连接;第五爬取的响应网页结果进行排序。做为舆情监控控系统的重要组成部分,微博爬虫和通用的网络爬虫类似,也需要遵守普通爬虫的基本原则,如稳定性、活动性、爬行时要遵守Robots协议等。

由于微博舆情监控系统的特殊需要,微博爬虫部分的设计和通用网络爬虫相比有很大区别。对整个网络内容信息进行抓取时通用爬虫的的工作策略,深度和广度策略都要用到。每一次完成抓取内容,爬虫都需要广泛的撒网,范围很大,同时也需要相对较长的时间和资源。聚焦抓取和定向抓取是爬虫常用的策略,但是在具体的实施过程中要选择既效率高又节省资源的方法对各种和主题相关的网页进行收集获取,这也是舆情监控系统重要功能体现。聚焦爬虫为了避免资源浪费,采取了只对与用户定制主题相关的资源进行获取,实现的方法是通过计算向量空间模型实现的,在最短的时间内完成信息的获取,并且工作范围还比较小,这就是定向抓取的方式。通过网页的连接信息能够查询到所属的归属地,也可以判断出这个网页是否和具体的某个微博关系度比较大。用户只关心与自己定义主题有关的信息,所以仅连接本微博相关度大的连接。用关键词的范围比较和语义扩展来实现微博爬虫的灵活性。为了不丢弃和用户定义的主题的信息,可以通过提高判断关键词和识别的比较的方法。为了减轻微博爬虫爬行负担,爬虫一般会设法减少爬取网页的相关数目。用户可以通过设置一定的爬行策略来满足抓取时的特殊需要,如设置限定的爬虫的爬取范围或者利用关键词实现高速获取信息等,省掉了抓取无关网页的大量时间。

4.2 创新点

第一,快速抓取网络时刻更新的大量内容,网络页面的更新也需要爬虫定时的回访原来爬行过的页面站点,从而确保最新的焦点话题能够能够在整个舆情监控系统中快速获取。微博爬虫的工作效率和多次抓取有着重要的关系,尤其是多次爬去的效率和范围。增量式抓取和周期性抓取策略是网站页面抓取的重要手段,为了保证网页信息的时效性采取对多个网页定期性的爬取,同时根据爬去的周期性采取不同的爬行策略,对于和主题相关度比较大的网页重点抓取。

第二,在微博爬取过程中在一定时间内是爬行模块是比较固定的,它的目录机构要遵循一定的命名规则,所以很明显的区别与其他的模块。例如新浪微博等微博中不相同模块就可以通过域名来区别出来,也就可以利用这样来给爬取的文档分类保存,不同的微博模块可以采用不同的爬取策略,例如对变化比较快,比较大的模块可以设置多次的爬行策略,而对于变化速度比较慢的模块可以减少爬行次数,从而提高了爬行的效率。当然要实现以上的策略,需要有智能的识别系统来识别微薄的更新速度和时间,也对不同的网络连接是指不同的抓取策略。

[1]PJianpingZeng,PShiyong Zhang,Chengrong Wu,PJianfengXiePredictive Modelfor Internet Public Opinion.Proceedings of the Fourth International Conference onFuzzy Systems and Knowledge Discovery(FSKD 2007).2007,Vol.3:7-11。

[2]姜胜洪.网络舆情热点的形成与发展、现状及舆论引导[J].理论月刊,2008,(4)

[3]张旭,张振江,刘云.BBS舆情系统爬虫模块的研究[J].铁路计算机应用2010(12)18-21

[4]刘金红,陆余良.主题网络爬虫研究综述[J].计算机应用研究.2007(10)26-29.

[5]A.Rungsawang,N.Angkawattanawit.Learnable topic—sp'ecificweb crawler[J].Journal ofNetwork and Computer Applica—tions.2005(28):97—11

[6]迈克塞沃尔.链接分析:信息科学的研究方法[M].孙建军,李江,张煦,等.南京:东南大学出版社,2009:15.

猜你喜欢

爬虫网页页面
利用网络爬虫技术验证房地产灰犀牛之说
刷新生活的页面
基于Python的网络爬虫和反爬虫技术研究
基于CSS的网页导航栏的设计
基于HTML5静态网页设计
基于URL和网页类型的网页信息采集研究
大数据环境下基于python的网络爬虫技术
网页制作在英语教学中的应用
基于Heritrix的主题爬虫在互联网舆情系统中应用
网站结构在SEO中的研究与应用