网页数据抓取软件(Web包装器是Web数据集成体系结构中的关键部分定义)

优采云 发布时间: 2021-12-01 04:10

  网页数据抓取软件(Web包装器是Web数据集成体系结构中的关键部分定义)

  随着互联网的飞速发展,网络已经成为人们获取信息的主要渠道之一。大多数公司或团体通过网站的网页发布公司信息。为了充分利用这些信息,而不仅仅是浏览,应用程序必须从网页的 HTML 形式中提取感兴趣的数据,并将其转换为具有一定结构的格式化数据。Web 包装器软件的任务是提取 HTML 格式的数据并将其转换为结构化数据。基于Web Wrapper 的应用程序可以通过访问数据库中的信息来访问Web 数据,因此Web Wrapper 是Web 数据集成架构的关键部分。本文在研究Web包装器概念设计的基础上,采用最新的Web技术,

  中国论文网

  一、web wrapper 的概念设计

  定义Wrapper:给定一个收录一系列网页P的网页数据源S(其中P={p1, p2Λ, pn}),找到一个映射关系W,可以将S中的P映射到一个数据集R,当pi,j ∈{1,Λ,n}的结构变化不大,可以正确提取数据。映射 W 通常被称为 Web 包装器(Wrapper)。

  从功能上看,Wrapper是一个程序,根据特定的抽取规则,从特定的半结构化Web数据源中进行数据抽取。Wrapper 的核心是抽取规则。提取规则用于从每个 HTML 文档中提取相关信息。

  维护步骤首先要进行Wrapper验证,然后进入维护流程。当页面发生变化时,wrapper提取的数据可能不正确或者没有提取数据,从而触发维护例程。维护本质上就是在新页面中重新建立抽取规则,完成Wrapper的自动修复过程。

  Web信息抽取是从网页中收录的非结构化或半结构化信息中识别出用户感兴趣的数据,并将其转化为结构和语义更清晰的格式(XML、关系数据、面向对象数据等) .) . 信息抽取可以理解为从待处理的文本中抽取信息,形成结构化数据并存入数据库供用户查询和使用的过程。因此,为了完成信息的抽取和转换,web wrapper需要具备四个能力:(1)信息定位:确定所需信息在文档中的位置;(2)数据抽取:change 将文本内容分成字段提取数据;(3)数据组织方式:根据正确的结构和语义组织提取的数据;(4) 可维护性:当网页发生变化时,网页包装器仍然可以正确提取数据。因此,我们设计了一个高效的网页包装器算法如下:

  进入:

  -config.xml 配置文件:Web数据源S抽取规则定义;

  -S:网页数据源;

  -P:Web数据源S的网页,其中P={p1, p2Λ, pn};

  -T:HTML解析后生成的DOM树,其中T={t1, Λ, tn};

  -B:要提取的信息块,其中B={b1, K, bm};

  -表达:表达;

  输出:

  -R:提取数据结果集 R=R1, YR2KYRn

  ① 使用JDOM解析Config.xml配置;

  ②R=(空数据集);

  ③for (int i=1; i<=n; i++)

  {

  在S中解析pi得到ti,即:pi→ti

  从ti定位信息中提取块bj,即:ti→bj,其中j∈{1,Λ,m}

  //对pi中得到的bj进行如下操作;

  ④for (int j=1; j<=m; j++)

  {

  使用表达式 Express 从 bj 中提取数据,记为 Rij={rj1,Λ,rjk};

  k表示从S中抽取数据生成k个字段的数据模型

  }

  ⑤RetuRnRi=Ri1YRi2ΛYRim},其中i∈{1,Λ,n}

  }

  ⑥RetuRnR=R1YR2ΛYRn

  二、Web Wrapper 软件设计

  根据上述算法,Web Wrapper的结构主要由三个模块组成:预定义模块、数据提取模块和数据组织模块。其中,预定义模块和数据提取模块是Web包装器的核心部分。

  1.预定义模块。预定义模块主要完成抽取规则的定义。本文设计的 Web 包装器是一种基于规则的抽取模型。考虑到这个包装器的可维护性和可重用性,信息定位和信息提取是通过解析XML配置文件(Config.xml)来完成的。如果Web数据源页面发生变化,Web包装器的维护只需更改此Web数据源的配置文件(Config.xml)即可。在网页组织结构变化不大的情况下,可以方便快捷地解决网页包装器的维护问题。预定义提取规则Config.xml配置文件模板如下:

  <?xml 版本="1.0" 编码="gb2312"?>

  <配置>

  <url>网页源页面地址</url>

  <beginPage>起始页</beginPage>

  <endPage>EndPage</endPage>

  <标签>标签</标签>

  <指数>指数编号</指数>

  <regex>正则表达式</regex>

  </配置>

  2.数据提取模块。数据提取模块作为Web包装器的核心部分,完成信息定位和信息提取的功能。页面解析主要是解析HTML文档格式的文件,可以使用HTMLParser解析器。HTMLParser 是一个纯 Java 编写的 HTML 解析库。它不依赖于其他 Java 库。它是 HTML 解析和分析的好工具。它可以根据需要抓取网页数据或修改 HTML 内容。该模块主要完成提取信息的定位,即确定要提取的信息块在文档中的位置。

  信息定位完成后,根据定义的提取规则中的正则表达式,根据字段提取所需数据。正则表达式是一种强大的工具,可用于模式匹配和替换。正则表达式是一种由普通字符和特殊字符(称为元字符)组成的文本模式,它描述了在搜索文本主体时要匹配的一个或多个字符串。以正则表达式为模板,将某个字符模式与搜索到的字符串进行匹配,从而可以按字段提取所需的数据。

  3.数据组织模块。Web 包装器的功能是从半结构化信息中提取结构化数据并保存。因此,如何将提取的数据以结构化的形式保存,也是Web包装器的关键部分。数据组织模块刚刚完成了对提取结果的处理。我们使用 XML 格式来组织提取结果。XML 语言具有良好的数据存储格式、可扩展性、高结构和易于与数据库交互的特点,便于日后对提取的信息进行进一步的处理,如检索、分类等。

  三、 算法验证和结果分析

  为验证本文提出的Web包装器设计与实*敏*感*词*、北京等出版社推荐出版新书。大学网站 使用以上设计思路,定义页面的抽取规则和Web wrapper,并进行书籍信息抽取测试。用ce、te、fe分别表示:已提取的正确信息数、未提取的正确信息数、已提取的错误信息数;R代表召回率,也叫召回率;P代表Accuracy,也叫准确率。

  从上表的实验结果可以看出,这个打包器的召回率(recall rate)和准确率(precision rate)可以达到接近100%。经分析,清华大学出版社以列表形式展示了其图书出版页面。为了提取详细数据,采用二次提取完成数据提取。在提取过程中,由于部分图书信息定位不同,部分图书信息无法提取。但从整体的实验结果来看,这种网页包装设计是可行且高效的。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线