网页信息表格化提取程序

来源 :课程教育研究 | 被引量 : 0次 | 上传用户:zhangyi202
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  【摘要】本文介绍了基于MSHTML设计开发的网页信息表格化提取程序的原理、程序结构和工作流程,使用网页信息提取、网页元素解析、采集配置管理三大功能模块,实现对网页及其内部关联信息的提取、解析、整理和表格化显示,创新使用了对网页属性值和树路径值进行确认的二元检查机制,能够实现对指定信息的准确提取。本文还举例说明了程序的操作步骤和实际效果。
  【关键词】MSHTML 信息自动提取 网页元素属性 表格化显示
  【中图分类号】G64 【文献标识码】A 【文章编号】2095-3089(2017)10-0229-02
  引言
  当今是网络高速发展、信息量急剧膨胀的信息时代,人们通过信息来互相交流,认识世界。在信息中存在着大量有价值的信息要素,这些有价值的信息要素大都以网页的形式存在,其内容和格式千差万别。如果通过浏览器进行浏览和阅读不存在问题,但若需要将感兴趣的某类信息及其内部关联信息保存下来并进行整理,目前常用的工具普遍存在着某些缺点,比如网络蜘蛛等爬虫工具无法实现对内部关联信息的提取。因此,本人作者使用MSHTML语言设计了网页内部表格化提取的自动程序,可以完成对网页及内部关联信息的保存、整理和表格化显示,能够明显提高对信息的利用效率。
  1.程序的设计思想
  1.1 采集原理
  众所周知网页是由HTML語言描述的,采集网页中信息的实质是从网页的HTML代码中提取我们需要的信息,如果直接从代码中提取,只能采取诸如正则表达式等文本匹配的方式進行采集。这样就会产生以下问题:一是使用不便,使用者不仅要了解HTML,还要了解正则表达式,此外还需要在大量的HTML代码中找到所需信息,然后考虑如何进行匹配;二是容错性差,代码中如果出现些许偏差就会导致文本匹配失败,如碰到制表符、回车、空格等等。
  经过长期研究,作者发现MSHTML能够有效解决这些问题。MSHTML是微软公司的一个COM组件,该组件封装了HTML语言中的所有元素及其属性,通过其提供的标准接口,可以访问指定网页的所有元素。
  MSHTML提供了丰富的HTML文档接口,共包含IHTMLDocument、IHTMLDocument2、…、IHTMLDocument7等7种。其中,IHTMLDocument只有一个Script属性,是管理页面脚本用的;IHTMLDocument2接口跟C#的HtmlDocument类(即通过Web Browser控件直接获得的Document属性)很相似;IHTMLDocument3是跟Visual Basic 6.0里的文档对象相似的一个接口,基本上可以用到的方法都在其中。MSHTML还提供封装了对HTML元素完整操作的IHTMLElement接口,通过IHTMLElement,可以准确地判断HTML元素节点的类型,还可以获取HTML元素节点的所有属性。
  1.2 二元检查机制
  通过对元素属性值的比对,可以基本确定某个元素节点是否是要采集的节点。由于在网络中网页信息属性值相同的元素节点比例很高,属性值相同并不能唯一指定要采集的节点,还需要其他约束条件。通过分析,发现MSHTML还提供了访问当前节点的父节点的功能,我们可以通过对父节点的回溯,取得该节点在HTML文档树中的路径。这样,同时比较网页元素的属性值和树路径值,就能够精确判断节点是否是需采集节点。
  同时使用属性值和树路径值进行元素确认的二元检查机制,是作者的一项创新。这种技术不仅能够极大提高采集节点的精确性,保证程序运行的效果,而且由于在程序中使用了智能判断语句,保证了程序的运行效率,兼顾了用户拥有良好的用户体验。
  1.3主要功能设计
  网页信息表格化提取程序能够实现对网页信息的可配置采集以及对信息进行表格化处理并保存,程序主要分三大块功能模块:
  1.网页信息提取功能模块。提供信息提取功能的主界面,输入采集网址,采集页数及启动采集。
  2.网页元素解析功能模块。将html代码解析成网页元素列表,并自动生成采集项的DOM树路径,以方便脚本的编写。
  3.采集配置管理功能模块。用于管理采集配置,提供新增,编辑,删除等功能。
  3.程序的主要功能实现方法
  3.1采集配置管理
  采集配置信息使用数据库保存,主要由一对主从表来记录。主表记录相应网站采集配置的名称、域名、翻页设置、载入等待设置等信息。从表记录采集项的名称、网页元素的ID、ClassName、TagName以及DOM树路径等信息。
  3.2网页元素解析
  本功能的目标主要是将网页HTML代码解析成HTML DOM网页元素并列出其各个属性值。通过对网页元素的遍历,找出所要采集的数据项和下一页的网络元素,将其记录到采集配置表中,同时将采集项的DOM树路径自动记录到配置表中。
  3.2 网页信息自动抽取
  本功能将网页中需要采集的数据项采集出来形成数据表,最后以XML文档的形式保存。程序运行原理如下:
  Step1: 遍历网页中的所有元素,count变量记录网页元素的数量。
  Step2: 将每个元素与采集配置中的采集项配置做比较确定该元素是否是要采集的元素。tab_item是一个adotable变量,它记录了当前页面的采集配置,webbro.OleObject.document.all.item(i)变量是网页元素,itembyscript()函数将判断网页元素是否需要采集。
  Step3: 如果该元素是需要采集元素,进一步判断数据列缓存row里是否有该采集项的数据。如果没有,将采集来的数据存入row中,如果有,通过addrec()函数将采集来的数据行存入XML文档中。   4.运行测试
  4.1 读取页面
  本例将采用厦门本地知名论坛小鱼社区的一个帖子做测试。网页中的html代码将被解析成网页元素列表在“元素”页中显示。
  图1 读取页面信息
  4.2 配置采集
  将操作界面切换至“元素”页,可以看到网页元素列表,在列表中找出需要采集的网页元素。设置采集配置如下:
  (1)翻页。首先找到了“下一页”链接的网页元素,其tagname属性值为“A”,innertext属性值为“下一页”。将其设为“下一页”采集项。
  (2)作者。其所属网页元素,classname属性值为“readName b”,tagname属性值为“DIV”。
  (3)正文。其所屬网页元素,classname属性值为“tpc_content”,tagname屬性值为“DIV”。
  (4)DOM树路径。通过网页元素列表,自动生成DOM路径。
  4.3查看采集结果
  图2 表格化显示采集结果
  5.结语
  随着网络化的快速发展,人们对网页元素的需求越来越转向个性化分类和精确提取,以往面向全部内容的野蛮采集方式已经无法满足目前的需求,对其进行针对性的研究有着积极意义。
  网页信息表格化提取程序通过网页信息提取、网页元素解析、采集配置管理三大功能模块的分工协作,实现对网页及其内部关联信息的提取、解析、整理和表格化显示,不仅克服了以往网页信息抓取工具不能提取内部关联网页信息的不足,使得程序的适用性、扩展性明显提高,而且程序中创新使用的对网页属性值和树路径值进行确认的二元检查机制,能够实现对指定信息的准确提取,极大提升了程序结果的精确性。
  虽然网页信息表格化提取程序在精确性、适用性和扩展性上取得了进步,但也存在一些不足,希望以后能找到更好的解决方法。
  1.某些操作界面的用户自动化程序不足,操作较为繁琐。
  2.对海量数据的兼容性不足,处理效率低下。由于程序的获取页面采用WebBrowser技术,导致采集效率较低,在处理大数据时会出现效率低下的问题,还需要寻找更好的技术方法进行优化。
  参考文献:
  [1]房勇,李银胜.基于DOM状态转换的隐网页信息抽取算法[J]. 计算机应用与软件,2015,(09):17-21.
  [2]张建营,王嘉梅,汤雪,胡刚.彝文网页信息采集技术研究[J]. 网络安全技术与应用,2014,(12):6-8.
  [3]孙宝华.企业社会媒体主题信息提取算法研究[J].煤,2014,(01):72-76.
  [4]金涛.网络爬虫在网页信息提取中的应用研究[J]. 现代计算机(专业版),2012,(01):16-18.
  [5]朱志宁,黄青松. 快速的中文网页分类方法实现[J]. 山西电子技术,2008,(04):7-9.
  [6]高军,王腾蛟,杨冬青,唐世渭.基于Ontology的Web内容二阶段半自动提取方法[J]. 计算机学报,2004,(03):310-318.
其他文献
性高潮无须掩饰:在夫妻性生活中,性高潮的到来是夫妻性欲的顶峰,是他们爱的协奏曲中最为动听的乐章。这时夫妻双方都会情不自禁地表露出内心的激情,并伴有躯体的各种各样的
我国省市出版产业初具规模北京:定规划抓落实1996年,根据署里的总体规划,结合北京市的实际,我们修订了“九五”期间北京市新闻出版事业的规划。提出了五项战略,五大目标。五项战略是精
老年期的夫妻关系如何变化?    夫妻关系的变化与适应——一般说来,老年夫妻已经共同生活了几十年,一起养育了子女,同甘共苦,度过了人生的重要阶段。老夫老妻彼此相互了解和熟悉、有浓厚的感情和强烈的夫妻联盟感与认同感,与壮年或中年期略有不同,照理说,老年期是夫妻关系最稳固的阶段。可是进入了老年期的夫妻却有些情况需要相互适应,否则会在这金黄的婚姻阶段带来些小裂痕。  譬如说,到了老年期的老人,在精神能力
家庭和谐温馨的气氛对于孩子的健康成长非常重要,夫妻之间的角色定位、情感表达将或多或少地影响下一代人的婚恋生活,潜移默化地成为他们效仿的模版。 Family harmony and w
义工表示:如果确实需要帮助,即使是牺牲全部休息时间也无所谓,但受不了对方不尊重甚至欺骗自己劳动的做法。 Volunteers said: If you really need help, even at the expen
随着新课程改革的不断深入,学生在教学中的地位受到广大教育者的高度重视。参与式教学法就是一种充分体现学生主体地位的新型教学方法,这种教学方法主要将学生作为课堂教学的
一、班主任的专业素养缺失“作为一名教育工作者,尤其是班主任,我们常说自己爱学生,但我们给予学生的是否是‘真爱’,这就要仔细去查看我们的一言一行、一举一动是否给学生留
新千年的阳光温柔地照在脸上,我们却掩饰不住忧心忡忡。先是浙江金华的徐力杀母,然后是关于中小学生服毒、跳楼、出走的报道不绝于耳。到了今天,我们不得不返身自问:我们怎
编辑创造性的开发●谢咏梅阿力甫【乌鲁木齐】近来有人提出编辑工作是创造性工作的论点,并以大量的具体编辑工作作了详尽论证,这是编辑观念上的一大解放。按照传统的权威解释,“
英国出版商如何面对多媒体本刊记者文依多媒体的发展如日中天,特别是CD-ROM。但英国许多出版商开始叫苦不喋,原因是他们许多人试图在多媒体的浪潮中发财却落了空,许多出版商都想在新的