当前位置: 首页 > 范文大全 > 办公范文

网络爬虫基本原理(6篇)

时间:

网络爬虫基本原理篇1

关键词:大数据;爬虫;scrapy;歌词爬取

中图分类号:TP391.3

2012年2月12日《纽约时报》发表文章“Theageofbigdata”[1],作为主流媒体告诉人们,大数据真实地存在人们身边,而不是科技概念上的炒作。TeckTarget的一份调查显示[2],伴随业务增长以及互联网、社交媒体等领域的发展,已有超过57.1%的企业数据量突破TB级别。在社交媒体上,Twitter每天的信息数达到3.4亿,Facebook每天的分享和量达到40亿,YouTube每天上传的影片内容多达5万小时。全球著名咨询公司麦肯锡对大数据给出定义[3]:无法在可容忍的时间内用传统IT技术和软硬件工具对其进行感知、获取、管理、处理和服务的数据集合。我们不缺乏数据,缺乏的是从数据中提取出知识的能力[4]。

一般来说,行为科学的研究范式遵循先在原有理论基础上构造新的概念模型,然后通过数据收集、数据分析,最后证明概念模型能比现有理论更好地解释现实中企业或人们行为的规律。这样一来,数据收集方法的准确性、全面性对后续研究而言极为关键。但传统意义上的数据收集方法,如问卷调查法,访谈法等,其样本容量小、信度低、且受经费和地域范围所限,因而收集的数据往往无法客观反映研究对象,有着较大的局限性。正如“信息处理的准则――garbageingarbageout”所揭示的,如果输入的是无效信息,无论处理的程序如何精良,输出的都是无用信息。可见,对比传统的数据收集方法,立足于海量数据的研究有以下的优点:

(1)数据的真实性。使用问卷调查法收集数据,调查者难以了解被调查者是认真填写还是随便敷衍。事实上,大多数被调查者因为对调查问题不了解、回答方式不清楚等原因而敷衍了事,使得后续研究的价值大打折扣。而通过爬虫技术能快速获取真实、客观反应用户行为的数据,如用户在社交网络上对企业的评论显然要比在接受问卷调查时的回答真实。这是因为,前者是用户自愿与好友分享自己的购物经历或用户体验,而后者受调查环境所影响,若被调查者存在一定的心理压力,则做出的反馈可能会有失偏颇。

(2)样本容量。维克托・舍恩伯格指出[5],在成本限制下,采样的目的就是用最少的数据得到最多的信息,前提是要保证样本间的相互独立性。而传统的数据方法常常难以保证这一点,因为传统的数据收集方法在选择样本时常受到调查者自身因素的影响,如挑选友善的人群或自己的朋友,这样就难以保证样本的随机性和代表性,加上在过滤掉虚假样本后,真正能用来做分析处理的样本容量非常少。相比较而言,使用爬虫对互联网上的海量数据进行收集、分析,即所谓的“样本等于全体”的全数据模式,能更好地反映客观事实,而数据愈全面,分析研究的结果也就愈真实。

可见,爬虫不仅仅是一门技术,更是在大数据环境下进行高质量科学研究的一把新钥匙。掌握爬虫技术,已成为当下研究工作者的必备技能。下面笔者将阐述爬虫的原理及scrapy爬虫框架,并以爬取歌词为例,详细讲解使用scrapy爬取数据的步骤。

1爬虫原理

我们浏览的网页数以亿计,它们在世界各地的服务器上存储着。用户点击一个网页的超链接以跳转的方式来获取另一个页面的信息,而跳转的页面又有链接存在,网页便由超链接组成一个巨大且错综复杂的网。而Web爬虫(Crawler),也称蜘蛛(Spider),则是穿梭在这巨大的互联网中下载网页解析内容的程序。

爬虫的应用很广泛。在商务智能上,企业使用爬虫收集竞争对手的情报或在社交网络、虚拟社区上爬取用户对企业的评价从而在产品服务上做出改进等。在数据研究上,爬虫能快速收集互联网上的信息,为数据分析提供原始资料。

图1爬虫算法流程图

图1[6]为一个简单爬虫算法的流程图:从一系列种子(Seed)网页开始,使用这些网页的链接去获取其他页面,把这些网页中的链接依次提取出来后,访问链接对应的页面。在网络爬虫中,使用哈希表记录一个页面是否被访问过,未被访问的链接则放入队列。由调度算法,每次从队列中取出一个URL,然后通过"]

defparse(self,response):

hxs=HtmlXPathSelector(response)

singerlist=hxs.select('//ul/li')

items=[]

forsingerinsingerlist:

item=LyricItem()

item['singerName']=singer.select('a/text()').extract()

item['singerLink']=singer.select('a/@href').extract()

items.append(item)

returnitems”

2.4执行爬虫程序

“scrapycrawlLyric-oitems.json-tjson”

使用scrapy程序调用Lyric爬虫,并且爬取的结果以json文件格式保存到items.json文件中。

3结束语

我们正身处于“云计算、大数据、移动互联网、社会网络计算……”这股时代浪潮之中。大数据时代下数据的繁荣,给科研工作者进行科学研究带来极佳的原材料。编写爬虫程序收集数据,在真实、海量数据的基础上进行研究,无疑能孕育出新的科研成果,且其更贴近现实,对商业实践更具有指导意义。

参考文献:

[1]TimesNY.Theageofbigdata[EB/OL].[2012-10-02].?pagewanted=all&_r=0.

[2]孙瑞.2012年数据管理优先度调查:数据增长速度加快[EB/OL].[2012-8-31]..

网络爬虫基本原理篇2

关键词:网络论坛;意见领袖;pagerank算法;文本倾向性分析;舆情

中图分类号:TP391文献标识码:A文章编号:1009-3044(2011)22-5393-03

TheDesignandRealizationofOpinionLeadersDetectioninNetworkForum

GEBin1,JIANGLin-cheng1,XIAOYan-dong1,SHIZong-lin1,GUOSi-lu2

(1.ScienceandTechnologyonInformationSystemsEngineeringLaboratoryinNationalUniv.ofDefenseTechnology,Changsha410073,China;2.HunanElectricPowerDesignInstitute,Changsha410073,China)

Abstract:Opinionleadersinnetworkforumplayanimportantroleduringtheformationofpublicopinion.Howtodetectopinionleadersfromhugecommentshasanimportantpracticalsignificance.Asystemofopinionleadersautomaticdetectioninnetworkforumwasdesignedandrealizedbycomprehensiveusingwebcrawler,textextraction,textsentimentanalysis,influencecomputeandnetworkvisualization.Operationresultsshowedthatthesystemwasaccurate,efficientandstrong.

Keywords:networkforum;opinionleaders;pagerank;sentimentanalysis;publicopinion

随着网络技术的迅猛发展和网民规模的快速增长,越来越多的公众通过网络参与社会讨论和表达社会意见。由于互联网具有交流平等、参与广泛的特点,许多国内外热点事件能够迅速形成巨大的网络舆论压力,网络已成为反映社会舆情的主要载体之一。

在网络舆情的形成过程中,意见领袖的助推作用显著。能提出指导性见解、具有广泛社会影响的人叫意见领袖,又称舆论领袖。意见领袖在网络论坛中积累了较高的声望,在舆情事件酝酿和发酵过程中,舆情主体更容易受到意见领袖的影响,意见领袖的言论和意见往往会影响和改变其他人的意见,引导和推动事态进一步发展,他们在网络舆情的发生、发展和消亡过程中的作用可能是积极的,也可能是消极的,因而对意见领袖的挖掘工作具有重要的现实意义。

近年来,越来越多的研究机构开始利用信息化手段研究网络舆情,关于网络意见领袖的研究成果也层出不穷。贾文凤[1]分析了网络论坛意见领袖的构成,以概括现象的方法对意见领袖影响力作了论述。周裕琼[2]以强国论坛“十大网友”为研究对象,总结概括了政治论坛中网络舆论意见领袖的特征及意见领袖发挥作用的机制。这两篇文献均以研究意见领袖的特征和重要性为主,未能实现意见领袖的挖掘。GaoJunbo等[3]对基于小世界网络的在线论坛中意见领袖的发现进行了研究,虽然找出了论坛中的意见领袖,但采用的是论坛单日数据作为数据集,结果准确性不高。

本文面向国际互联网论坛中的海量评论,设计并实现了网络论坛意见领袖自动挖掘系统,以期准确挖掘出论坛中的意见领袖,为相关网络舆情监管部门及时发现热点问题、引导网络舆情健康发展提供技术支持。

1关键技术

1.1网络数据采集技术

网络数据采集技术是网络舆情研究的基础,数据采集一般使用网络爬虫[4]实现。网络爬虫是一个沿着链接漫游Web文档集合的程序,它一般驻留在服务器上,通过给定的种子URL,利用HTTP等标准协议读取相应文档,然后以文档中所有未访问过的URL作为新的起点,继续进行漫游,直到没有满足条件的新URL为止。网络爬虫的主要功能是自动从Internet上的各Web站点抓取Web文档,并从中提取信息来描述该Web文档,为搜索引擎站点的数据库服务器和网络舆情分析系统追加和更新数据提供原始数据。

1.2网页预处理技术

原始网页中往往含有大量的与研究无关的信息,且这些无关信息会影响到后续结果的处理,因此使用网页预处理技术来提取对研究有价值的正文信息。信息抽取技术的常用手段是通过正则表达式[5]实现,采用不同的正则表达式去分别匹配原始文件中的帖子标题、帖子内容、发帖作者、评论人和评论内容等信息,同时构造正则表达式过滤网页源码中的制表符、链接图片、字体等信息。只有通用性强、完善性好的正则表达式才能提高匹配的效率和准确率。

1.3影响力计算

意见领袖的主要作用体现在对其他用户的影响力上,Pagerank[6]算法是google用于网页排名的算法,挖掘意见领袖实质是对论坛中用户的影响力进行排名并找出排名靠前的用户,两者具有相似点,文献[7]对应用该算法处理社会网络数据进行了尝试,并对采用该算法探测意见领袖的合理性进行了深入的探讨。

基于Pagerank算法思想可对论坛中的帖子作者进行影响力计算。通过程序读入处理后的xml文件,将发帖者看作被链接的网页,回帖者作为链接网页,最后读入回帖文本,通过文本进行倾向性分析计算出此次链接的重要度结果。

1.4倾向性分析

分析用户之间关系时,除基本的连接关系外,一个用户对另一个用户的支持度计算是核心内容,通过对帖子的文本内容进行倾向性分析可提高支持度分析的准确性。文本倾向性分析是指通过挖掘和分析文本中的看法、好恶等主观信息,并对文本的情感倾向做出类别判断。倾向性分析一般由论坛情感语料库和帖子文本计算打分两部分组成。

论坛情感语料库的建立通过机器学习的方法实现,将论坛的历史帖子作为训练和测试语料,以支持向量机模型[8](SVM)作为分类器,其关键技术是中文分词和特征抽取[9]。中文分词是将一个字串分成词串,去掉没有意义的停用词,最终将一个句子分成名词、动词、形容词、副词等。特征抽取是挑选出各种代表情感的特征词,如“糟糕”、“很好”等。帖子文本计算打分建立在论坛情感语料库的基础上,计算过程先对文本进行分词并基于语料库抽取情感词,最后通过加权计算得到文本的情感倾向的计算结果。

2系统设计与实现

2.1系统总体结构

网络论坛意见领袖挖掘系统综合运用了网络爬虫、正则表达式匹配、文本倾向性分析、Pagerank算法、网络可视化等多种信息处理技术,实现对网络论坛意见领袖的自动挖掘。

系统主要功能由以下6个子模块组成:网页抓取模块、网页信息提取模块、Pagerank算法矩阵构造模块、意见领袖挖掘模块、挖掘结果验证模块和网络可视化模块,系统总体结构如图1所示。

2.2子模块功能实现

1)网页抓取模块。该模块利用改进后的开源爬虫netcrawler实现,根据用户提供的网络论坛种子URL抓取网页及相关帖子并存储到本地,供网页信息提取模块使用。

2)网页信息提取模块。该模块通过正则表达式匹配提取网页中的正文信息,包括网页标题、作者、发帖内容、回帖者、回帖内容等,并将同一个帖子的所有信息属性存储到xml文件中,最后生成论坛中所有帖子的xml文件库。

3)Pagerank算法矩阵构造模块。该模块通过读入预处理得到的xml文件,结合文本倾向性分析构造算法矩阵。第i个用户每次回复第j个用户的回帖内容,经过倾向性分析计算所得支持度数值,矩阵上每个点P(i,j)对应数值即代表第i个用户对第j个用户的支持程度。

4)意见领袖挖掘模块。该模块是论坛意见领袖挖掘的核心,通过设定Pagerank算法迭代收敛误差和需要提取的意见领袖人数,通过迭代计算得到论坛中的意见领袖。

5)挖掘结果验证模块。意见领袖挖掘模块得到的意见领袖可能是由于论坛中存在孤立结点导致等级沉没得到的,不具有孤立结点是Pagerank使用的前提,因而需要验证挖掘结果的正确性。验证时主要是通过人工浏览某些构成了孤立的小网络用户是否被选为了意见领袖,如果存在表明结果有误,剔除这些结点后重新执行意见领袖挖掘模块。

6)网络可视化。该模块使用基于prefuse[10]的社会网络可视化工具Vizster实现。系统去掉了繁多的个人信息,增加了凸显意见领袖和查看总得分功能,并且由于Vizster支持可视化搜索、分析和自动关联节点等功能,通过系统能够很容易地观看到整个论坛用户的影响力结构图,并通过颜色区分快速发现意见领袖。

3运行实验及结果分析

3.1实验环境与实验数据

系统采用visualstudio2005编码实现,实验使用的PC机配置为内存2G,主频2.10GHz,操作系统为WindowsXPProfessionalsp3。

实验数据集为天涯论坛篮球公园版块2011年5月1日前的所有主题与评论。程序运行结果如图2所示。

图3显示的是天涯论坛篮球公园版块论坛意见领袖可视化展示效果图。

3.2结果分析

在统计结果时发现椰子肥仔熊、缺啥有啥、阿杜犯规3个支持总人数仅有十多个的用户被选为了意见领袖,进一步查看发现三者相互支持且与外部很少交互,由此可见他们构成了一个孤立的小网络,导致了等级沉没。剔除这三个用户重新执行意见领袖挖掘模块,最终得到论坛意见领袖,对比查看天涯牛人堂上关于天涯篮球公园论坛意见领袖的资料,结果如表1所示。

由表1可以看出系统挖掘结果与依靠人工统计得出的意见领袖大致相同,系统运行得到的意见领袖准确率达到了90.9%,这充分体现了系统的准确性。两者之间存在的微小差异可能是爬取的数据集不够充分或者衡量指标不同导致的。进一步分析表明,天才混混qd、张佳玮、民非明是自由撰稿人、作家、资深篮球;天涯体育、地狱吸血鬼、甚爱毕大费是天涯篮球公园版主;赵一刀、商业包公、温酒一刀是篮球公园2010年度十大牛人;上帝之鹰和微雨霭芳原是论坛活跃用户,发表了大量帖子拥有众多粉丝。他们都具有广泛的影响力,符合意见领袖的特征。

4结论

本文综述了网络论坛意见领袖挖掘系统所需的关键技术,设计了系统的总体功能结构和运行流程,并综合运用多种信息处理技术实现了系统功能。经实际运行测试,系统能够准确探测出论坛意见领袖,与论坛的官方数据对比分析,证明了本系统所采用的方法是可行的,挖掘结果是准确的。随着论坛意见领袖重要性的不断凸显,该类系统的应用前景将越来越广泛。

参考文献:

[1]贾文凤.BBS舆论领袖的构成及其影响[J].青年记者,2006(20).

[2]周裕琼.网络世界中的意见领袖――以“强国论坛”十大网友为例[J].当代传播,2006(3).

[3]GaoJunbo,ZhangMin,JiangFan,etal.AnalysisofOpinionLeaderinOn-LineCommunities[J].Anhui:UniversityofScienceandTechnologyofChina,2005.

[4]罗刚.自己动手写网络爬虫[M].北京:清华大学出版社,2010.

[5]余晟.精通正则表达式[M].北京:电子工业出版社,2009.

[6]余小兵.Google搜索引擎的核心――PageRank算法综述[J].电脑与电信,2006(12).

[7]吴令飞.寻找“意见领袖”:应用PageRank算法处理社会网络数据的尝试[D].北京:北京大学,2007.

[8]王素格.基于支持向量机的文本倾向性分类研究[J].中北大学学报:自然科学版,2008,29(5).

[9]单大力.中文WEB文本倾向性分类研究[D].北京:北京交通大学,2007.

网络爬虫基本原理篇3

关键词:搜索引擎;Websphinx网络爬虫;超时;智能化

中图法分类号:TP393文献标识码:A文章编号:1009-3044(2008)28-0075-03

ResearchAndImprovementofNetworkReptileBasedonWebsphinx

ZHOUXiang

(TongjiUniversitySoftwareCollege,Shanghai200000,China)

Abstract:Withthedevelopmentofinternettechnical,Searchengineisbecomingmoreandmorepowerful.Therearealsosomefantasticsuccesscaseslikegoogleandbaidu.NetworkReptile,asanimportantpartofsearchengine,playanirreplaceableroleinit,especiallytheperformance.herewediscussaboutNetworkReptilebasedonanexistopensource――"Websphinx",explainthestructureandsearchstyleofWebsphinx,andshowoutsomenewopinion.

Keywords:searchengine;websphinxnetworkreptilesInterface;overtime;intelligent

1引言

现如今,随着搜索引擎的普及,网络爬虫程序也越来越受到人们的重视,它的效率直接关系到搜索引擎的速度。作为搜索引擎三环节中的第一个环节,它的效率直接决定了搜索引擎的搜索广度,面对浩瀚一望无边的网络海洋,如果有一个具有高性能爬虫程序,可能就会达到能够遍历所有internet网页内容的理想状态,同样会解决每天与日俱增的无数的网页和旧网页的更新。

本文主要结合Websphinx这个网络爬虫源程序来探讨一下关于爬虫程序的现状,该开源项目存在的一些问题以及一些可以改进的优化方案。

2websphinx基本原理

从一个基点网站出发,遍历其中的所有有用信息,同时抽去其中的链接信息放入队列,以待有空闲蠕虫(worm)时,从队列中读取,发出request请求,继续进行信息抽取和链接入队列的工作。

3源代码分析

入口为websphinx.workbench.workbench

主界面如图2。

输入startingURLs后,爬虫将以该网址为基点进行搜索

点击start后代码如下:

privatetransientPriorityQueuefetchQueue;//等待下载的链接队列

privatetransientPriorityQueuecrawlQueue;//已被爬出的但还未被处理链接队列

fetchQueue接收到网络应答和内容后则将链接加入crawlQueue队列

configureCrawler();//读取界面输入框中参数信息,准备以后搜索

……

Threadthread=newThread(crawler,crawler.getName());

thread.setDaemon(true);

thread.start();//启动线程搜索

crawler是一个Crawler类对象,实现Runnable接口

publicvoidrun(){

……

synchronized(crawlQueue){

Timertimer=newCrawlTimer(this);

inttimeout=dp.getCrawlTimeout();//dp:下载参数

if(timeout>0)

timer.set(timeout*1000,false);

intnWorms=Math.max(dp.getMaxThreads(),1);//拿到最大可用线程

worms=newWorm[nWorms];//爬虫对象

for(inti=0;i

worms[i]=newWorm(this,i);

worms[i].start();//开启网页访问进程,每个网址对应一个爬虫

}

……

Label1:synchronized(fetchQueue){

for(inti=0;i

if(worms[i].link!=null)

fetchQueue.put(worms[i].link);

}

将爬虫对象爬到的网页对象,只要有,即装入抓取队列继续等待抓取

其中:

classWormextendsThread{

……

publicvoidrun(){

crawler.fetch(this);//关键点,

}

……

}

其中fetch()用于抓取网址对象

在fetch()关键为:process(w.link)

Process方法:

//网页分类

for(intj=0,len=classifiers.size();j

Classifiercl=(Classifier)

classifiers.elementAt(j);

cl.classify(page);

}

++numPagesVisited;

if(pagePredicate==null||pagePredicate.shouldActOn(page)){

if(action!=null)

action.visit(page);

visit(page);

}

expand(page);//开始遍历该page中的所有链接

expand方法:

Link[]links=page.getLinks();

if(links!=null&&links.length>0){

for(inti=0;i

Linkl=links[i];

l.setDownloadParameters(dp);//设置下载参数

if(ignoreVisitedLinks&&visited(l))//已访问过(可能访问重复网页)

sendLinkEvent(l,LinkEvent.ALREADY_VISITED);

elseif(。。。)//需要跳过

sendLinkEvent(l,LinkEvent.SKIPPED);

elseif(page.getDepth()>=maxDepth)//超过最大深度

sendLinkEvent(l,LinkEvent.TOO_DEEP);

else

submit(l);//访问网页(加入队列等待访问)

}

}

submit方法:

markVisited(link);//将此link标记为访问过的

synchronized(crawlQueue){

synchronized(fetchQueue){

crawlQueue.put(link);

++numPagesLeft;//剩余未处理的page个数加1

fetchQueue.put(link);//加入等待下载的链接队列

fetchQueue.notifyAll();//唤醒爬虫程序开始捕捉

}

}

于是此处将crawlQueue和fetchQueue更新,将来会根据里面的内容进行网页遍历

以上是其主要处理流程和核心代码.

流程如图3。

4问题的提出

4.1关于超时(timeout)

访问网页会设定了一个超时限制(timeout),这也是大多数爬虫程序都有的限制。超时还没返回网页信息则放弃。对于此Websphinx

fetchTimedOut方法

synchronized(crawlQueue){

crawlQueue.delete(w.link);

--numPagesLeft;

worms[w.i]=newWorm(this,w.i);

worms[w.i].start();

crawlQueue.notify();

}

timeout方法:

synchronized(crawlQueue){

synchronized(fetchQueue){

state=CrawlEvent.TIMED_OUT;

fetchQueue.clear();

crawlQueue.clear();

numPagesLeft=0;

crawlQueue.notify();

}

}

这里存在一个很大的问题,我们知道,如果以国内为基点搜索,国内和国外的网站差别是很大的,而且现在的网络并不是很稳定,对于同一个网站发请求,有时很快就能返回信息,有时过很长时间才行,有时甚至出现无法访问的错误,在这样的环境下,对于爬虫程序,很容易就会返回不正确的结果,比如应该可以访问的,由于网络在某个时刻阻塞而返回超时或无法访问;两次以同一个网站为基站返回的搜索结果截然不同等等。

如果我们能给这种超时限制多一点空间,不要限制的太死是否会好一点?

基于这种想法,我们可以将超时限制分为不同的层次,如果在最开始的超时限制(最严格)下超时,我们可以再将超时限制放宽,再超时再放宽,直到达到上限,这样就可以最大限度的避免网络的不稳定和网站地域的区别而造成的误差

具体做法如下:(限制从严到宽为限制1,限制2。。。)

在达到限制1时,不要马上将对象(网址)剔出队列,而是新建队列:fetchQueue2,并将此对象加入此队列;同样,其他线程也有同样情况对象出现也加入fetchQueue2。同时此时将此队列的超时(timeout)限制放宽一层到限制2,优先级降低。一旦有返回结果时,则进行信息截取,然后重新将遍历出的对象(网址)加入原队列(fetchQueue);如果仍没返回结果,新建队列fetchQueue3,并再次放宽限制,降低优先级;一旦有返回结果时,再回到fetchQueue。。。

当然,一旦成功就回到原始队列fetchQueue,这样如果是国外的网站效率就会很低,因为它很可能每次都要走fetchQueue2,fetchQueue3甚至更高,所以可根据网址特征,过去搜索结果对网址进行评估,是国外网站则可以专门设计一队列(fetchabroadQueue),它的初始限制比fetchQueue高,其他可仿照fetchQueue设计,同样有fetchabroadQueue2,fetchabroadQueue3等等。

对于国内某些本来就很慢的网站(服务器网速慢等情况),可以在搜索时做一些智能化处理,比如,某一网站网址出现:

fetchQueuefetchQueue2fetchQueue3fetchQueuefetchQueue2fetchQueue3……

这种情况达到一定次数,就认定为慢网站,可将该网站的流程改为:

fetchQueuefetchQueue2fetchQueue3fetchQueue2fetchQueue3……

4.2关于算法

Websphinx对于每张网页调用visit(page)然后expand(page),其中expand(page)用于遍历所有该page中的链接。可以看出,它使用的是广度遍历的方法。

但不是所有的网站都适用于广度遍历。广度遍历适用于深度较少而每层内容较多的情况,而深度遍历适用于深度高而每层内容较少的情况。对于那种像sina,sohu等等的信息集中网站链接比较多的网站适用于广度优先,但是对于某些做专业技术的网站,比如化工,原料,生命科学专业信息网站,他们往往分类很细,要看到具体信息,需要往下找到具体分类,才能看到具体信息,此时深度已经很高了,如果将其看作一颗树,则信息几乎全在低层。如果还用广度优先算法,则在开始会找到很多重复的没有多大价值的信息,并且如果深度限制太死,则可能根本找不到底层而导致找到的有价值信息几乎为0,也失去了爬虫的意义。

但是我认为最值得我们关注的是爬虫程序的智能化。正如我们所见到Websphinx的搜索程序是不变的,每次搜索都是用同样的方法。但对于internet这个庞大的网络而言,每次都用同样的方法势必会导致重复工作效率不高,如果搜索方式(广度或深度)用错,势必每次都用错,如果加入人工智能的因素会对程序的性能有很大的帮助。

对网站的分类(国内或国外,信息集中或专业化),每搜索一次根据前述方法区分一次,记录结果;然后取出最近10次的搜索结果记录取平均值,最近5次的搜索结果记录取平均值;分别作比较,如果分类一致则不变,如果有变化,证明可能网站类型有变化,可再取最近4次,3次,2次的搜索结果记录取平均值作分析重定位网站类型,记录结果。

在扫描网页内容时,可将每一次的信息与上一次比较,对于每次变化很小或长时间没什么变化的网页可以记为“懒惰”网页,同样对网站也是如此。从而可以降低其搜索周期,比如从原来的一周一次降为两周一次,变化快的也可以缩短周期,但到上限为止。

5结论

网络爬虫作为搜索引擎的基本组成部分,它的爬行速度和爬行量直接影响着搜索效率与质量。本文从具体网络爬虫程序Websphinx的代码实现出发,结合一般网络爬虫的相关概念和构成,介绍了网络爬虫的相关概念,并阐述了网络爬虫的组成结构,对Websphinx的现状提出一些问题和相应解决方案和优化方案。

参考文献:

[1]徐宝文,张卫丰.搜索引擎与信息获取技术[M].北京:清华大学出版社.2003.

[2]Java开源项目Websphinx,可扩展的Web爬虫项目[EB/OL]./.

[3]张敏,高剑峰,马少平.基于链接描述文本及其上下文的Web信息检索[J].计算机研究与发展,2004,41(1):221-226.

[4]JeffHeaton.ProgrammingSpiders,Bots,andAggrega-torsinJava.[M].Sybex,2002

[5]李晓明,闫宏飞,王继民.搜索引擎:原理,技术与系统[M].北京:科学出版社,2005.

[6][Abiteboul97]SergeAbiteboulandVictorVianu,QueriesandComputationontheWeb.ProceedingsoftheInternationalConferenceonDatabaseTheory.Delphi,Greece1997.

[7][Bagdikian97]BenH.Bagdikian.TheMediaMonopoly.5thEdition.Publisher:Beacon,ISBN:0807061557.

网络爬虫基本原理篇4

关键词:互联网视频网站;爬虫技术;获取数据

中图分类号:TN915.08文献标识码:A文章编号:1671-2064(2017)03-0030-01

在当前阶段中,随着计算机网络技术的不断完善,各个领域当中的数据在不断增加,从而使当前社会进入到大数据时代,这些数据可以为各个领域的发展提供良好的帮助。这种情况下,为了使互联互联网视频网站更好的为人们提供视频,就要更好的对这些数据进行获取。因此,加强对互联网视频网站使用爬虫技术获取数据的研究具有重要意义,促进我国互联网视频网站更好的发展。

1互联网视频网站数据获取的特点

1.1一般特点

随着社会的发展,科学技术的不断进步,计算机网络技术得到了飞速的提升,从而出现了大量的数据,其中就包括了互联网视频网站数据,在这些数据当中,就会体现出很多的特点,主要有以下几个方面:(1)数据体量巨大。在人们的生活当中,利用网络观看视频是主要的娱乐方式之一,因此,在观看的过程中,就会出现很多的网络信息,如用户的个人信息,用户对节目观看的信息,节目自身具有的信息等等,从而使其具有了数据体量巨大的特点;(2)数据类型繁多。在对视频网站进行应用时可以发现,在其中包含了很多形式的内容,如图片、视频、文字等,因此,就说明视频网站产生的数据出现了类型繁多的特点;(3)价值密度低。在视频网站运行的过程中,是连续不断的产生数据的,而在这些数据当中,包括了各个种类的信息,而在这些信息当中,有些信息存在的价值往往不是很高,不会影响到视频网站的发展;(4)处理速度快。这一特点就体现在人们对视频观赏时,能够立刻的产生数据,据相关部门统计,互联网视频网站每秒产生的数据是以PB为单位的[1]。

1.2获取网页信息

在互联网视频网站数据当中,除了具有上述的一般特点之外,还具有获取网页信息的特点。在对视频网站开发的过程中,可以利用很多技术来完成,如英文超级文本预处理语言技术、面向对象程序设计语言技术等,虽然这些技术的方式具有一定差异,但是在对数据进行传输时,使用的原理相差不是很大,都是利用相应的HTTP协议,将数据传递到用户当中。并且,由于互联网视频网站数据具有上述的一般特点,因此,在其对数据进行获取时,还可以获取一些网页当中的信息,通过对网页中的信息进行应用,从而为视频网站更好的运行提供了帮助[2]。

2互联网视频网站获取数据时爬虫技术的应用

2.1网络爬虫的算法分析

在应用爬虫技术对互联网视频网站数据进行获取时,是利用相应的算法来完成的,而在当前的算法当中,主要有以下三种:第一种是深度优先搜索算法,该算法是爬虫技术当中最基础的算法,同时也是出现最早的一种算法,其目标是要到达结构的最外结点,即在搜索时不能将具有链接的HTML文件检索出来。该算法运行当中,首先沿着一条链接进行检索,直到边缘节点为止,将该条连接中的所有数据搜索出来,然后在对另一条链接进行搜索,从而使视频网站获得了相应的数据。使用该种算法获取数据时,能够准确的检索出整个文件中的数据,但是由于网络的复杂性,在对数据搜索时,常常会导致该算法中断,不能对其他链接进行检索;第二种为宽度优先算法,就是在视频网站信息获取的过程中,根据网站的结构不同,沿着宽度的方面,一层一层的进行搜索[3]。

2.2算法改进

由于上诉的基本算法都存在一定的缺陷,对互联网视频网站的数据获取带来了一定的影响,其中最好优先搜索算法的缺陷较小,只是存在查全率不高的问题,因此,就要对该算法进行改进。在利用改进算法进行检索时,在对一个文件查找完成后,就算该文件与本次查找关系不大,但是也不会对其进行忽略,而是将其储存到相应的位置,对其进行深入的分析,分析出每个信息中是否会存在视频网站有用的信息,如果不存在这一类信息,才可以继续对其他文件进行检索,然后利用该种算法对整个网络进行检索,从而改善了查全率不高的问题,使互联网视频网站数据获取的效果更高[4]。

3结语

综上所述,在当前的互联网当中,大数据为其发展提供了重要的帮助,但是,由于大数据具有的开放性、共享性等特点,在使用的过程中还会存在一定的风险,因此,在利用爬虫技术对互联网视频网站的数据进行获取时,要加强对数据风险的防范,能够保证网站的安全性、可靠性。

参考文献

[1]孔涛,曹丙章,邱荷花.基于MapReduce的视频爬x系统研究[J].华中科技大学学报(自然科学版),2015,09(05):129-132.

[2]邓炳光,郭慧兰,张治中.移动互联网用户行为分析系统中聚焦爬虫的设计与实现[J].重庆邮电大学学报(自然科学版),2015,11(03):359-365.

网络爬虫基本原理篇5

关键词:网络爬虫,策略,搜索引擎

网络快速发展的今天,互联网承载着海量的信息,能够准确快速的提取我们所需要的信息是现在的挑战。传统的搜索引擎有Yahoo,Google,百度等,这些检索信息的工具是人们每天访问互联网的必经之路。但是,这些传统性搜索引擎存在着局限性,它不能全面的准确的找到所需要的信息,也会使一些和需求无关的内容一起搜索到。严重的降低了使用这些信息的效率,所以说提高检索信息的速度和质量是一个专业搜索引擎主要的研究内容。

1.搜索引擎的研究

1.1搜索引擎的分类

搜索引擎按其工作方式可分为三种,分别是全文搜索引擎,目录索引类搜索引擎[1]和元搜索引擎。

1.全文搜索引擎

全文搜索引擎是最常用搜索引擎,大家最熟悉的就是国外的代表Google,和国内的代表百度。它们通常都是提取各个网站的网页文字存放在建立的数据库中,检索与用户查询条件匹配的相关记录,然后按其自己设定的排列顺序将结果返回给用户。

从搜索结果来源的角度,全文搜索引擎又可细分为两种,一种是拥有自己的检索程序,它们拥有自己的网页数据库,搜索到得内容直接从自身的数据库中调用,如Google和百度;另一种则是租用其他引擎的数据库,但是,是按自定的格式排列搜索结果,如Lycos引擎。

2.目录索引型搜索引擎

目录索引,就是将网站分类,然后存放在相应的目录里,用户在查询所需要的内容时有两种选择一种是关键词搜索,另一种是按分类目录一层一层的查找。据信息关联程度排列,只不过其中人为因素要多一些。如果按分层目录查找,某一目录中网站的排名则是由标题字母的先后以关键词搜索,返回的结果跟搜索引擎一样,也是按自定顺序决定。

目录索引只能说有搜索功能,但仅仅是按目录分类的网站链接列表。用户完全可以不用进行关键词查询,仅靠分类目录也可找到需要的信息。目录索引型搜索引擎中最具代表性的是Yahoo(雅虎)。其他著名的还有LookSmart、About等。国内的搜狐、新浪、网易搜索也都属于这一类。

3.元搜索引擎

当用户在进行查询时,元搜索引擎可以同时在其他多个引擎上进行搜索,将检索结果进行统一处理,并将结果以统一的格式返回给用户。正因为如此,这类搜索引擎的优点是返回结果的信息量更全面,但是缺点就是无用的信息太多不能准确的找到用户需要的结果。

具有代表性的元搜索引擎有Dogpile、InfoSpace、Vivisimo等,中文元搜索引擎中著名的有搜星搜索引擎。

在搜索结果排列方面,不同的元搜索引擎有不同的结果排列的方式。如Dogpile,就直接按来源引擎排列搜索结果,如Vivisimo,是按自定的规则将结果重新进行排列。。

1.2搜索引擎的工作原理

搜索引擎主要是对用户要求的信息进行自动信息搜集,这个功能共分为两种:一种是定期搜索,即每隔一段时间搜索引擎主动派出Spider”程序,目的是对一定IP地址范围内的互联网站进行检索,如果一旦发现新的网站,它会自动提取网站的信息和网址加入自己的数据库;另一种是提交网站搜索,即网站拥有者主动向搜索引擎提交网址,搜索引擎在一定时间内定向向你的网站派出蜘蛛程序,扫描你的网站并将有关信息存入数据库,以备用户查询。

如果用户以关键词查询所需要的信息时,搜索引擎会在数据库中进行搜寻,如果找到与用户要求内容相匹配的网站时,搜索引擎通常根据网页中关键词的匹配程度,出现的位置/频次,链接质量等特殊的算法计算出各网页的相关度及排名等级,然后根据关联度高低,按顺序将用户所需要的内容反馈给用户。

2.网络爬虫

2.1通用网络爬虫和聚焦网络爬虫的工作原理

网络爬虫是搜索引擎的重要组成部分,它是一个自动提取网页的程序,为搜索引擎从网上下载网页。

传统爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列,直到满足系统的一定停止条件。。

与传统爬虫相比,聚焦爬虫的工作流程则较为复杂,需要根据一定的网页分析算法过滤与主题无关的链接,保留有用的链接并将其放入等待抓取的URL队列。然后,它将根据一定的搜索策略从队列中选择下一步要抓取的网页URL,并重复上述过程,直到达到系统的某一条件时停止。另外,所有被爬虫抓取的网页将会被系统存起来,进行一定的分析、过滤,并建立索引,为了方便之后的查询和检索。

2.2网络爬虫的搜索策略

1.IP地址搜索策略

IP地址搜索策略是先给爬虫一个起始的IP地址,然后根据IP地址以递增的方式搜索本IP地址段后的每一个地址中的文档,它完全不考虑各文档中指向其它Web站点的超级链接地址。这种搜索策略的优点是搜索比较全面,因此能够发现那些没被其它文档引用的新文档的信息源;但是缺点是不适合大规模搜索。

2.深度优先搜索策略

深度优先搜索是一种在开发爬虫早期使用较多的方法。它的目的是要达到被搜索结构的叶结点(即那些不包含任何超链的HTML文件)。例如,在一个HTML文件中,当一个超链被选择后,被链接的HTML文件将执行深度优先搜索,也就是说在搜索其余的超链结果之前必须先完整地搜索单独的一条链。深度优先搜索沿着HTML文件上的超链走到不能再深入为止,然后返回到某一个HTML文件,再继续选择该HTML文件中的其他超链。当不再有其他超链可选择时,说明搜索已经结束。

3.宽度优先搜索策略

宽度优先搜索的过程是先搜索完一个Web页面中所有的超级链接,然后再继续搜索下一层,直到底层为止。例如,一个HTML文件中有三个超链,选择其中之一并处理相应的HTML文件,然后不再选择第二个HTML文件中的任何超链,而是返回并选择第二个超链,处理相应的HTML文件,再返回,选择第三个超链并处理相应的HTML文件。当一层上的所有超链都己被选择过,就可以开始在刚才处理过的HIML文件中搜索其余的超链。

宽度优先搜索策略的优点:一个是保证了对浅层的优先处理,当遇到一个无穷尽的深层分支时,不会导致陷进WWW中的深层文档中出现出不来的情况发生;另一个是它能在两个HTML文件之间找到最短路径。

宽度优先搜索策略通常是实现爬虫的最佳策略,因为它容易实现,而且具备大多数期望的功能。。但是如果要遍历一个指定的站点或者深层嵌套的HTML文件集,用宽度优先搜索策略则需要花费比较长的时间才能到达深层的HTML文件。

2.3网络爬虫的发展趋势

随着AJAX/Web2.0的流行,如何抓取AJAX等动态页面成了搜索引擎急需解决的问题,如果搜索引擎依旧采用爬”的机制,是无法抓取到AJAX页面的有效数据的。对于AJAX这样的技术,所需要的爬虫引擎必须是基于驱动的。而如果想要实现事件驱动,首先需要解决以下问题:第一,JavaScript的交互分析和解释;第二,DOM事件的处理和解释分发;第三,动态DOM内容语义的抽取。

3.结束语

本文阐述了搜索引擎的原理以及网络爬虫的工作原理和发展趋势,网络爬虫技术的研究对搜索引擎的应用和发展有着十分重要的意义。抓住准度和速度两个大方向,进一步的深入网络爬虫技术,在耗费最少的网络资源的前提下使搜索引擎能够更准确更快捷的找到人们的需求。

参考文献

[1]Edwards,J.,McCurley,K.S.,andTomlin,J.A.(2001).'Anadaptivemodelforoptimizingperformanceofanincrementalwebcrawler'.InProceedingsoftheTenthConferenceonWorldWideWeb(HongKong:ElsevierScience):106–113.doi:10.1145/371920.371960.

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

[3]王岩,搜索引擎中网络爬虫技术的发展,电信快报,2008(10):19-20.

[4]刘世涛,简析搜索引擎中网络爬虫的搜索策略,阜阳师范学院学报,2006(9):60-61.

网络爬虫基本原理篇6

【关键词】小世界模型;社团分析;复杂网络

0引言

随着EMBA教育逐渐为社会各界所熟识,EMBA培养院校的招生工作目前面临巨大压力。从市场竞争的格局来看:一方面,国内EMBA院校已经达到64所,加上境外大学的教学项目,在国内招生的EMBA项目已经近百所,而且还有继续扩大的趋势,未来的竞争会更加激烈。另一方面,随着MBA和其他硕士教育的迅速普及,未来EMBA的申请人数量将呈逐年下降的趋势。这使得市场竞争态势更加雪上加霜,商学院必须有所转变,不能取得某一细分市场优势地位的EMBA项目,或者没有建立自己品牌特色的项目将面临生存危机。

在各培养院校的招生过程中,尤其是EMBA项目的市场调研中,如何在庞大的数据、人际关系网络中找到关键节点,进而通过关键节点寻找到适合EMBA招生的生源群体,是目前EMBA招生环节中的关键问题。当今社会的人际关系网络错综复杂,变化万千,如何对人际关系进行系统性的描述和梳理,划分出相应的群体并研究他们的共同特征,是系统科学中十分关键的问题。复杂网络理论由于其具有小世界、集群等特性,十分适用于对社会网络即人际关系网络中的人群进行分类与描述,进而寻找出人际关系网络的关键节点和群体,为寻找出潜在招生对象提供依据。

1相关工作

现代市场营销职能体系包括商品销售、市场调查研究、生产与供应、创造市场要求和协调平衡公共关系五大职能。对于高等教育市场来看,高等教育提供的产品就是教育,教育市场有市场的需求,同时也具备了价值交换的能力,所以教育活动完全可以与市场接轨参与市场竞争。人际关系网络是一个错综复杂、变化万千的复杂系统。近年来随着复杂网络研究的兴起,人们在这些理论的指导下能够更好的了解和解释现实世界的很多现象,比如反映社区特性的“物以类聚、人以群分”现象、反映小世界特性的“六度分隔”现象,以及反映复杂网络节点的不对等特性的“马太效应”等等。在很好的理解和解释了这些现象的基础上,研究者开始尝试利用这些理论去帮助人们利用这些现象,并开发了很多的实际的应用和系统。例如:城市交通网络、电子商务推荐系统、人际关系挖掘系统等。

近年来,学界关于复杂网络的研究方兴未艾。1998年Watts和Strogatz在Nature杂志上发表文章,引入了小世界(Small-World)网络模型,以描述从完全规则网络到完全随机网络的转变。小世界网络既具有与规则网络类似的聚类特性,又具有与随机网络类似的较小的平均路径长度。二是1999年Barabasi和Albert在science上发表文章指出,许多实际的复杂网络的连接度分布具有幂律形式。由于幂律分布没有明显的特征长度,该类网络又被称为无标度(Scale-Free)网络。而后科学家们又研究了各种复杂网络的各种特性。

在人际关系网络获取方面,由于网络内不仅节点众多,而且关系的分类也多种多样。因此获取人际关系是一项非常复杂的工程,历史上几次比较大规模的实验也仅仅是采用书信或者政府档案的方式,覆盖面十分有限。随着网络的发展,互联网的内容日新月异,互联网成为了最大的非结构化数据库,使从网络中探索人际关系成为了可能。目前网络的关系获取方法主要有两种:关系搜索引擎和社区资源。关系搜索引擎的的基本原理是利用网络爬虫从网页中抽取出人名、地名、机构名以及中文短语,再根据算法计算出他们存在关系的可能性。现阶段国内的关系搜索引擎有微软人立方(http://renlifang.msra.cn/)、雅虎人物搜索和搜搜华尔兹(http://tag.soso.com/)。但是由于网页的来源比较复杂,而且存在重名的问题,得到的结果往往不精确,难以真实的表现出真实的人际关系。第二种搜索方式则是利用网络中现有的社区资源,对其信息进行抓取,得到的信息虽然规模有限,但是可以确定所有节点信息,具有更强的结构化特性,更加符合真实人际关系的无标度和小世界特性。

2基于复杂网络的招生生源社团分析方法

2.1系统的设计目标与创新点

在整个人际关系网络中,存在一些子网,它们对于其内部的节点具有高类聚性,而对于子网外部节点的连接确相对稀疏的特性,我们称之为人群的社团结构。

通过实现社团划分系统,并对真实人际关系网络进行处理和分析,研究复杂网络社团划分技术在未来人际关系网络处理上的潜在应用以及较以前撒网式处理方式的优势。本系统希望能够对招生生源的人际关系网络进行分析,寻找出人际关系中的关键节点以及关键社团信息,以此为EMBA招生生源选取以及宣传广告的定向投放目标选择提供必要依据。

该方法是对传统市场调查分析、广告宣传领域的再思考,相比广泛撒网式的宣传与调查,该方法具有效率高、定位准确、耗费人力物力较少、资源可重复利用性强等优点,十分适合于解决EMBA面临的招生生源困难这一具体问题。

2.2网络社区的选择

选取网络社区需要综合考虑多方面因素:

(1)关系要真实有效,即网络的好友关系能比较客观的反映出现实生活中的好友关系。

(2)关系网络要足够大,仅仅包括几千个节点的网络能够在非常短的时间内遍历完毕,不能够反映出来真实人际关系非常难以获取的特点,不具有研究价值。

(3)关系网络可以比较方便的获得,部分网络社区采用了加密设置,非注册用户不能够获得其他人的好友关系,虽然从技术上可以进行破解,但是存在较大的风险。

(4)社区允许爬虫进行抓取,对于需要的页面不存在robot.txt的限制。

(5)服务器比较强大,可以应对每秒钟几百次(包括爬虫的访问次数在内)的请求。

经过对国内较大的几家SNS(社会性网络服务)网站的测试分析,最终选取了聚友网(http://myspace.cn)作为实验的样本。聚友网是以SNS为基础的娱乐平台,是全球最大的在线交友平台之一MySpace的中国本地化网站,符合以上几点要求,且服务器可供校园网访问。聚友网(Myspace),是以SNS为基础的娱乐平台,是全球最大的在线交友平台Myspace的中国本地化网站,提供免费的微型博客、个人主页、个人空间、电子相册、博客空间、音乐盒视频上传空间等服务。我们所要采用的Myspace网络是从该网站的众多用户中,使用网络爬虫技术获得的其中的13569个用户,网络中包含了99185条关系,两个节点之间的一条边则意味着相应的两个用户之间互为好友关系。

2.3招生生源社团分析系统

招生生源社团划分系统包括爬虫获取信息、关系分析、数据读入、数据显示、社团划分和数据显示六个个部分。网络爬虫系统将分析出的典型社会网络信息,经过关系分析处理,最终存储成为网络原始结构数据。用户可以使用社团划分系统读入已有的人际关系网络数据,并让系统对其进行社团划分。在系统运行算法完毕后,将会自动保存对该人际关系网络社团划分后的最终结果,用户可以通过窗口查看各个社团所包含的派系、节点等信息,被查看的社团还可以用图片的形式显示出来。

其中各模块的功能如下:

爬虫模块:负责从典型社交网络中获取社交信息。

关系分析模块:负责将社交信息之间的关系进行处理并存储形成网络原始结构数据。

数据读入:读入系统需要分析的原始数据。

数据写出:将经过社团划分系统处理后的数据保存到文档中。

数据显示:在社团划分系统中显示社团划分的结果。

社团划分:核心算法,分为2个部分。第一步,寻找原始数据中所有的派系;第二步,通过派系重叠矩阵划分出k-派系社团。

3实验与分析

3.1招生生源社团分析系统

社团划分系统采用了复杂网络社团划分技术中的派系过滤算法为其主要核心。本章主要是使用社团划分系统分析Myspace这一真实的人际关系网络,将获得的社团结果和统计结果与实际情况相对比,测试核心算法在系统中是否正确的运行,并验证得出利用社团划分系统分析学生的人际关系网络,能够得到合理的社团结构,满足寻找潜在生源的目的,为EMBA招生起到提高宣传推广效率的作用。

聚友网(Myspace),是以SNS为基础的娱乐平台,是全球最大的在线交友平台Myspace的中国本地化网站,提供免费的微型博客、个人主页、个人空间、电子相册、博客空间、音乐盒视频上传空间等服务。我们所要采用的Myspace网络是从该网站的众多用户中,使用网络爬虫技术获得的其中的13569个用户,网络中包含了99185条关系,两个节点之间的一条边则意味着相应的两个用户之间互为好友关系。下图展示了Myspace的好友关系图。

图3Myspace网络用户关系展示

3.2系统分析结果

通过社团划分系统对Myspace网络的分析,我们共获得各派系共12446个,派系社团559个。下图为使用社团划分系统分析Myspace网络后,获得的一个17-派系社团结构(k=17)和一个33-派系社团结构(k=33)。

图4Myspace网络的一个17-派系社团(k=17)

图5Myspace网络的一个33-派系社团(k=33)

3.3结果分析

选取Myspace网络社团划分结果中的3-派系社团(k=3)、4派系社团(k=4)和5派系社团(k=5)作为我们的分析目标。

经统计分析,Myspace网络中3-派系社团(k=3)、4派系社团(k=4)和5派系社团(k=5)的社团大小分布图(SizeDistribution)和重叠量分布图(OverlapDistribution)如下图所示。

我们可以看到,无论社团大小分布图还是重叠量分布图都大致满足幂律分布,且随着k值的减小,曲线变得更为平滑。但是当k值比较大时,因为社团较少,所以曲线呈现锯齿状图样,这可能是因为在使用网络爬虫技术对Myspace网站进行数据收集时,由于该网站用户数量十分的庞大,网络爬虫并没有存储所有的用户信息,而只是选取了其中13569个用户来组成的Myspace网络。尽管Myspace网络基本满足应有的小世界及无标度特性,但从上图可以看出,其数据集仍然存在着缺陷。

3.4小结

3.4.1测试结果

首先,系统总体效率需要提高,无论是派系过滤算法还是系统其它功能,在分析Myspace网络中效率都显得比较低,这在之前分析较小规模的网络上并不是十分明显。然后,社团划分的统计结果在大体上还是满足幂律分布的,本文认为这是因为Myspace网络数据集存在的缺陷引起的,并不是因为社团划分系统算法运行的问题。考虑到Myspace网站庞大的用户数量、测试条件与个人能力的限制,总体测试的结果还是可以接受的。最后,尽管派系过滤算法本身的时间复杂度偏高、计算量大,但是在更新更快的社团划分算法开发出来之前,它是分析大型复杂网络社团结构最符合实际要求的算法。

3.4.2应用验证

Mysapce网络规模较大,因此要想直接观察其社团结构是非常不方便的,所以我们采用社团结构的统计特性来进行验证。对社团划分系统分析Myspace网络所获得的社团结构进行统计分析,我们可以看出社团划分系统在大型人际关系网络分析中依然可以获得合理的结果。学校招生应用中,即使面对大规模的学生人际关系网络,也能够得到较为准确的结果,这在提高学校招生宣传的精准度上有良好促进作用。

4结束语

本文通过对市场营销理论的研究,对如何将教育营销理论融入到EMBA招生这一具体问题进行了分析与探讨。本文通过将复杂网络理论引入教育营销中,分析人际关系网络中的复杂网络特性,尤其是其聚集聚团性,并根据该性质设计并实现了一套适用于EMBA招生生源获取的人际关系社团分析系统。对典型的社会网络(Myspace网络)实例的分析结果表明,该社团分析系统可以很好的对人际关系网络社团性质进行发现和获取,为学校招生应用中,即使面对大规模的学生人际关系网络,也能够得到较为准确的结果,这在提高学校招生宣传的精准度上有良好促进作用。

【参考文献】

[1]张新民.中国EMBA教育透视[J].企业管理,2004(05).

[2]曾小军.民办高校引入营销理念与招生策略研究[J].教育导刊,2009(09).

[3]周广训.谈高校营销的特点[J].中国成人教育,2004(09).

[4]徐芳.教育营销和教育营销战略[J].广东职业技术师范学院学报,2001(1):7.

[5]林进奎.营销创新与教育营销[J].东岳论丛,2004(03).