论文部分内容阅读
摘 要: 目前Web数据挖掘技术已得到广泛应用,通过对Web挖掘分类和挖掘基本理论的分析,提出网络爬虫原理内容挖掘方法,深入分析这种方法的原理和工作流程。爬虫原理的应用可满足特定用户的需求,实现高效、快捷、针对性强的查询。
关键词: Web挖掘分析; 网络爬虫; 原理分析
中图分类号:TP391 文献标志码:A 文章编号:1006-8228(2013)07-01-02
0 引言
随着Internet的日益普及,电子商务正以其成本低廉、方便、不受时空限制等突出优点而逐步在全球流行。同时经济模式也发生了变化,从传统的实体商店到Internet上的电子交易,改变了销售商和顾客的关系。现在,网上顾客的流动性很大,他们更多关注商品的使用价值和价格,而不像以前更多关注品牌和地理因素。因此,电子销售商一个主要的挑战是尽可能多地了解到客户的兴趣爱好和价值取向,以保证在电子商务时代的竞争力。通过Web日志挖掘,可以发现顾客的购买偏好;发现忠实客户,为他们提供个性化的服务,延长客户的驻留时间;发现潜在用户,为他们提供个性化页面,变潜在用户为忠实客户,扩大市场占有率;分析客户未来可能发生的行为,进行有针对性的电子商务营销活动,提高广告的投资回报率。所以从长远看对基于Web数据挖掘的研究很有必要。
1 Web数据挖掘概述
Web數据挖掘是数据挖掘技术的重要应用,它是指在大量训练样本的基础上,得到数据对象间的内在特性,并以此为依据在网络资源中进行有目的的信息提取[1]。
1.1 Web数据挖掘流程
Web数据挖掘总体上讲来,可以由五个流程来完成,如图1所示。
⑴ Web查找资源:根据所提供的目标Web文档内容,采用一定的技术方法获得相应的数据,形成挖掘的数据源。需要说明的是,这部分资源不仅局限于在线Web文档资源,还包括与其相关的电子邮件、电子文档、新闻组,或者网站的日志数据资源,甚至还可包括通过Web形成的交易数据库中的数据资源。如何对这些资源进行融合是一个极为重要的问题。
⑵ 信息选择和预处理:通过查询获得的数据源,从中筛选出有用的信息,并将其按一定的类型进行归集。
⑶ 模式发现:针对归集得到的有用信息,将其应用于某一具体的站点或多个相应的站点,并进行自动模式发现。
⑷ 模式分析:对模式发现阶段得到的一些模式进行分析,验证、解释每一步骤间产生的模式的关联关系。这一阶段的工作可以由机器自动完成,也可以与分析人员进行交互来完成,主要依据模式发现规模来确定。
⑸ 信息整理:对经过模式分析得到的信息进行进一步挖掘整理,将其应用于Web商务中。
1.2 Web数据挖掘分类
Web挖掘技术研究至今,已有一些不同的方法,一般根据对Web数据的感兴趣程度不同,可将Web数据挖掘分为Web内容挖掘、Web结构挖掘、Web用法挖掘三类。
⑴ Web内容挖掘:Web内容挖掘指从Web内容中发现有用信息[2]。Web上的信息由各种类型的数据源组成,包括WWW、FTP、Telnet等,比如数字图书馆、政府信息服务、电子商务数据,以及其他可以通过Web访问的数据库。
⑵ Web结构挖掘:从广义上讲,Web的结构包含三个内容:一是不同网页间的超链接;二是网页内部的网络地址字符串中的目录路径结构信息;三是网页内部内容可以用HTML、XML表示成的树形结构信息[3]。
⑶ Web用法挖掘:即Web使用纪录挖掘技术[4],在新兴的电子商务领域有重要意义,它通过挖掘相关的Web日志纪录,来发现用户访问Web页面的模式;通过分析日志纪录中的规律,可以识别用户的喜好与满意度,这些分析数据可以帮助我们提高站点的服务质量,同时发现未来潜在用户。
2 爬虫原理
爬虫是一个用来分解Web中超文本结构的工具,而网络爬虫则可以认为是一个自动提取网页的程序,它为搜索引擎从万维网下载网页,是搜索引擎的重要组成部分。一个商业网站的Web页面是以超链接的关系存在的,这就组成了类似一张张的网。
网络爬虫是通过网页的链接地址来寻找网页,从网站某一个页面(通常是首页)开始,读取网页的内容,同时找到在网页中的其他链接地址,通过这些链接地址寻找下一个网页,这样一直循环下去,最终把这个网站所有的网页都抓取完为止[5]。
假设把整个互联网当成一张网,那么网络爬虫就可以用这个原理在这张网上把互联网上所有的网页信息都抓取下来。具体可按如下步骤。
Step1:从一个或若干初始网页的网页地址开始,获得初始网页上的网页地址;
Step2:不断从当前页面上抽取新的地址放入队列,直到满足系统的一定条件才停止。聚焦爬虫的工作流程较为复杂,需要根据一定的网页分析算法过滤与主题无关的链接,保留有用的链接并将其放入等待抓取的地址队列;
Step3:根据一定的搜索策略从队列中选择下一步要抓取的网页地址;
Setp4:不断重复步骤2-3,直到达到系统的某个条件发出停止指令,不再往下访问;
Setp5:将所有被爬虫抓取的网页存贮,并进行一定的分析、过滤,并建立索引,以便之后的查询和检索。对于聚焦爬虫来说,这一过程所得到的分析结果还可能对以后的抓取过程给出反馈和指导;
Setp6:任务完成。
3 基于爬虫内容挖掘分析
3.1 内容挖掘过程
同Web挖掘总体过程一样,内容挖掘过程由数据获得、数据分析、数据保存、内容挖掘四个过程组成[6],具体介绍如下。
⑴ 数据的获得:利用爬虫原理对Web相应数据进行查找,从需要的信息起始页开始运行爬虫程序取得数据信息,得到与商务相关的大多数Web页面上的信息。这部分资源不仅局限于在线Web文档资源,同时还有与其相关的电子邮件、电子文档、新闻组,或者网站的日志数据资源。 ⑵ 数据的分析:对Web相关数据进行分析,在对链接页面进行搜索的过程中,经常需要判断信息的属性或分析信息的价值。这一阶段的数据非常多,必须在前一阶段进行分类,同时对有些数据要进行必要的处理,不必要的必须将其删除,否则影响分析进程,比如一些广告信息等并不是我们所需要的数据。
⑶ 数据的保存:通过前一过程的分析,需要把经过分析得到有效的数据最终保存到一定数据库(就目前针对海量数据来讲,一般选择如SQL Server2008等)当中,目的是为了下一步最终的挖掘作准备工作。
⑷ 数据挖掘:利用一定的挖掘技术对数据进行深入分析,最终获取有效的信息,同时对信息模式进行相应的分类,并对这些分类模式进行验证。
3.2 网络爬虫挖掘技术实现
本爬虫技术采用非递归方式来实现爬行过程。在实现过程中要构建等待队列、运行队列、完成队列、错误队列四个队列,需经过三个流程[7]。
这四个队列如下:
⑴ 等待队列是爬虫初始网页地址和爬虫程序新发现的网页地址的集合;
⑵ 运行队列是爬虫程序正在处理的网页地址的集合;
⑶ 完成队列是已经被爬行完成的网页地址的集合;
⑷ 错误队列是爬虫程序在解析页面出错或读取数据超时网页地址的集合。
网络爬虫程序在执行时,同一时刻一个网页地址只能在一个队列中,我们把它称为一个网页地址状态。程序按状态图从一个状态变换到一个状态,如图2所示。
通过图2过程图可以看出,一个网页地址从被待处理到此网页地址处理完毕要经历四个网页地址状态过程。首先是在等待队列中,网页地址等待被自动机进行处理,新发现的网页地址被加入到这个队列中;当自动机开始处理某个网页的网页地址时,这个网页地址就被送到运行队列中进行处理;在处理过程中,可能有两种情况出现,即这个网页是否存在问题,要根据这个问题作出相应的处理,如果自动机在抓获某个网页时有问题,那么这个网页的地址将被送到错误队列,错误队列中的地址不能被移入到其他队列中;如果自动机成功地获取某个网页,那么这个网页的地址将被送到完成队列,完成队列中的地址也不能被移入到其他队列中。
需要注意的是,等待队列中的地址向运行队列移交过程中,需要有一个判断,这个判断是确定这个网页是否被访问过,若访问过则不能重复爬行;当运行队列中一个网页地址处理完成后,等待队列中地址按照先进先出的原则被加入到该队列,同时队列中相应的地址被删除。
4 结束语
电子商务正在企业和商贸领域中占据着越来越多的市场份额,Web挖掘支持网络应用,具有很强的平台适应能力,它的适用性和可移植性强。现在世界上的主要数据库厂商纷纷开始把数据挖掘功能集成到自己的产品中。作为电子商务成功的重要因素,它必将成为一种关键技术。
本文介绍了Web挖掘的基本流程,引入了基于图形的爬虫技术挖掘方法,阐述了挖掘步骤,能有效挖掘Web有价值的数据,完成挖掘任务。但由于这种技术基于图形形式,当面对海量数据时,对图形的扫描仍然存在一定的困难,这些问题尚需深入分析研究。
参考文献:
[1] 蔡遒花,张支山.Web使用模式及其在电子商务领域的应用[J].科技管理研究,2005.11:126-127
[2] 陈美荣,杨莉.基于电子商务网站的Web内容挖掘[J].电子商务,2008.2:149
[3] 王玉珍.基于电子商务的Web挖掘技术研究[J].北京电子科学院学报,2005.4:22-25
[4] 吳海珍,郑群明.Web记录挖掘及其在旅游电子商务中的应用[J].电脑学习,2005.5:41-42
[5] 周建梁.聚焦爬虫原理及关键技术研究[J].科技资讯,2008.22:26
[6] 李霞.Web内容挖掘在企业电子商务网站的应用研究[J].网络财富,2010.5:130
[7] 胡晟.基于网络爬虫的Web挖掘应用[J].软件,2012.7:145-147
关键词: Web挖掘分析; 网络爬虫; 原理分析
中图分类号:TP391 文献标志码:A 文章编号:1006-8228(2013)07-01-02
0 引言
随着Internet的日益普及,电子商务正以其成本低廉、方便、不受时空限制等突出优点而逐步在全球流行。同时经济模式也发生了变化,从传统的实体商店到Internet上的电子交易,改变了销售商和顾客的关系。现在,网上顾客的流动性很大,他们更多关注商品的使用价值和价格,而不像以前更多关注品牌和地理因素。因此,电子销售商一个主要的挑战是尽可能多地了解到客户的兴趣爱好和价值取向,以保证在电子商务时代的竞争力。通过Web日志挖掘,可以发现顾客的购买偏好;发现忠实客户,为他们提供个性化的服务,延长客户的驻留时间;发现潜在用户,为他们提供个性化页面,变潜在用户为忠实客户,扩大市场占有率;分析客户未来可能发生的行为,进行有针对性的电子商务营销活动,提高广告的投资回报率。所以从长远看对基于Web数据挖掘的研究很有必要。
1 Web数据挖掘概述
Web數据挖掘是数据挖掘技术的重要应用,它是指在大量训练样本的基础上,得到数据对象间的内在特性,并以此为依据在网络资源中进行有目的的信息提取[1]。
1.1 Web数据挖掘流程
Web数据挖掘总体上讲来,可以由五个流程来完成,如图1所示。
⑴ Web查找资源:根据所提供的目标Web文档内容,采用一定的技术方法获得相应的数据,形成挖掘的数据源。需要说明的是,这部分资源不仅局限于在线Web文档资源,还包括与其相关的电子邮件、电子文档、新闻组,或者网站的日志数据资源,甚至还可包括通过Web形成的交易数据库中的数据资源。如何对这些资源进行融合是一个极为重要的问题。
⑵ 信息选择和预处理:通过查询获得的数据源,从中筛选出有用的信息,并将其按一定的类型进行归集。
⑶ 模式发现:针对归集得到的有用信息,将其应用于某一具体的站点或多个相应的站点,并进行自动模式发现。
⑷ 模式分析:对模式发现阶段得到的一些模式进行分析,验证、解释每一步骤间产生的模式的关联关系。这一阶段的工作可以由机器自动完成,也可以与分析人员进行交互来完成,主要依据模式发现规模来确定。
⑸ 信息整理:对经过模式分析得到的信息进行进一步挖掘整理,将其应用于Web商务中。
1.2 Web数据挖掘分类
Web挖掘技术研究至今,已有一些不同的方法,一般根据对Web数据的感兴趣程度不同,可将Web数据挖掘分为Web内容挖掘、Web结构挖掘、Web用法挖掘三类。
⑴ Web内容挖掘:Web内容挖掘指从Web内容中发现有用信息[2]。Web上的信息由各种类型的数据源组成,包括WWW、FTP、Telnet等,比如数字图书馆、政府信息服务、电子商务数据,以及其他可以通过Web访问的数据库。
⑵ Web结构挖掘:从广义上讲,Web的结构包含三个内容:一是不同网页间的超链接;二是网页内部的网络地址字符串中的目录路径结构信息;三是网页内部内容可以用HTML、XML表示成的树形结构信息[3]。
⑶ Web用法挖掘:即Web使用纪录挖掘技术[4],在新兴的电子商务领域有重要意义,它通过挖掘相关的Web日志纪录,来发现用户访问Web页面的模式;通过分析日志纪录中的规律,可以识别用户的喜好与满意度,这些分析数据可以帮助我们提高站点的服务质量,同时发现未来潜在用户。
2 爬虫原理
爬虫是一个用来分解Web中超文本结构的工具,而网络爬虫则可以认为是一个自动提取网页的程序,它为搜索引擎从万维网下载网页,是搜索引擎的重要组成部分。一个商业网站的Web页面是以超链接的关系存在的,这就组成了类似一张张的网。
网络爬虫是通过网页的链接地址来寻找网页,从网站某一个页面(通常是首页)开始,读取网页的内容,同时找到在网页中的其他链接地址,通过这些链接地址寻找下一个网页,这样一直循环下去,最终把这个网站所有的网页都抓取完为止[5]。
假设把整个互联网当成一张网,那么网络爬虫就可以用这个原理在这张网上把互联网上所有的网页信息都抓取下来。具体可按如下步骤。
Step1:从一个或若干初始网页的网页地址开始,获得初始网页上的网页地址;
Step2:不断从当前页面上抽取新的地址放入队列,直到满足系统的一定条件才停止。聚焦爬虫的工作流程较为复杂,需要根据一定的网页分析算法过滤与主题无关的链接,保留有用的链接并将其放入等待抓取的地址队列;
Step3:根据一定的搜索策略从队列中选择下一步要抓取的网页地址;
Setp4:不断重复步骤2-3,直到达到系统的某个条件发出停止指令,不再往下访问;
Setp5:将所有被爬虫抓取的网页存贮,并进行一定的分析、过滤,并建立索引,以便之后的查询和检索。对于聚焦爬虫来说,这一过程所得到的分析结果还可能对以后的抓取过程给出反馈和指导;
Setp6:任务完成。
3 基于爬虫内容挖掘分析
3.1 内容挖掘过程
同Web挖掘总体过程一样,内容挖掘过程由数据获得、数据分析、数据保存、内容挖掘四个过程组成[6],具体介绍如下。
⑴ 数据的获得:利用爬虫原理对Web相应数据进行查找,从需要的信息起始页开始运行爬虫程序取得数据信息,得到与商务相关的大多数Web页面上的信息。这部分资源不仅局限于在线Web文档资源,同时还有与其相关的电子邮件、电子文档、新闻组,或者网站的日志数据资源。 ⑵ 数据的分析:对Web相关数据进行分析,在对链接页面进行搜索的过程中,经常需要判断信息的属性或分析信息的价值。这一阶段的数据非常多,必须在前一阶段进行分类,同时对有些数据要进行必要的处理,不必要的必须将其删除,否则影响分析进程,比如一些广告信息等并不是我们所需要的数据。
⑶ 数据的保存:通过前一过程的分析,需要把经过分析得到有效的数据最终保存到一定数据库(就目前针对海量数据来讲,一般选择如SQL Server2008等)当中,目的是为了下一步最终的挖掘作准备工作。
⑷ 数据挖掘:利用一定的挖掘技术对数据进行深入分析,最终获取有效的信息,同时对信息模式进行相应的分类,并对这些分类模式进行验证。
3.2 网络爬虫挖掘技术实现
本爬虫技术采用非递归方式来实现爬行过程。在实现过程中要构建等待队列、运行队列、完成队列、错误队列四个队列,需经过三个流程[7]。
这四个队列如下:
⑴ 等待队列是爬虫初始网页地址和爬虫程序新发现的网页地址的集合;
⑵ 运行队列是爬虫程序正在处理的网页地址的集合;
⑶ 完成队列是已经被爬行完成的网页地址的集合;
⑷ 错误队列是爬虫程序在解析页面出错或读取数据超时网页地址的集合。
网络爬虫程序在执行时,同一时刻一个网页地址只能在一个队列中,我们把它称为一个网页地址状态。程序按状态图从一个状态变换到一个状态,如图2所示。
通过图2过程图可以看出,一个网页地址从被待处理到此网页地址处理完毕要经历四个网页地址状态过程。首先是在等待队列中,网页地址等待被自动机进行处理,新发现的网页地址被加入到这个队列中;当自动机开始处理某个网页的网页地址时,这个网页地址就被送到运行队列中进行处理;在处理过程中,可能有两种情况出现,即这个网页是否存在问题,要根据这个问题作出相应的处理,如果自动机在抓获某个网页时有问题,那么这个网页的地址将被送到错误队列,错误队列中的地址不能被移入到其他队列中;如果自动机成功地获取某个网页,那么这个网页的地址将被送到完成队列,完成队列中的地址也不能被移入到其他队列中。
需要注意的是,等待队列中的地址向运行队列移交过程中,需要有一个判断,这个判断是确定这个网页是否被访问过,若访问过则不能重复爬行;当运行队列中一个网页地址处理完成后,等待队列中地址按照先进先出的原则被加入到该队列,同时队列中相应的地址被删除。
4 结束语
电子商务正在企业和商贸领域中占据着越来越多的市场份额,Web挖掘支持网络应用,具有很强的平台适应能力,它的适用性和可移植性强。现在世界上的主要数据库厂商纷纷开始把数据挖掘功能集成到自己的产品中。作为电子商务成功的重要因素,它必将成为一种关键技术。
本文介绍了Web挖掘的基本流程,引入了基于图形的爬虫技术挖掘方法,阐述了挖掘步骤,能有效挖掘Web有价值的数据,完成挖掘任务。但由于这种技术基于图形形式,当面对海量数据时,对图形的扫描仍然存在一定的困难,这些问题尚需深入分析研究。
参考文献:
[1] 蔡遒花,张支山.Web使用模式及其在电子商务领域的应用[J].科技管理研究,2005.11:126-127
[2] 陈美荣,杨莉.基于电子商务网站的Web内容挖掘[J].电子商务,2008.2:149
[3] 王玉珍.基于电子商务的Web挖掘技术研究[J].北京电子科学院学报,2005.4:22-25
[4] 吳海珍,郑群明.Web记录挖掘及其在旅游电子商务中的应用[J].电脑学习,2005.5:41-42
[5] 周建梁.聚焦爬虫原理及关键技术研究[J].科技资讯,2008.22:26
[6] 李霞.Web内容挖掘在企业电子商务网站的应用研究[J].网络财富,2010.5:130
[7] 胡晟.基于网络爬虫的Web挖掘应用[J].软件,2012.7:145-147