CN103678509B - 生成网页模板的方法及装置 - Google Patents

生成网页模板的方法及装置 Download PDF

Info

Publication number
CN103678509B
CN103678509B CN201310606200.7A CN201310606200A CN103678509B CN 103678509 B CN103678509 B CN 103678509B CN 201310606200 A CN201310606200 A CN 201310606200A CN 103678509 B CN103678509 B CN 103678509B
Authority
CN
China
Prior art keywords
webpage
web page
page template
label
content area
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310606200.7A
Other languages
English (en)
Other versions
CN103678509A (zh
Inventor
马晓辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Qihoo Technology Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201310606200.7A priority Critical patent/CN103678509B/zh
Publication of CN103678509A publication Critical patent/CN103678509A/zh
Application granted granted Critical
Publication of CN103678509B publication Critical patent/CN103678509B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation

Abstract

本发明公开一种生成网页模板的方法及装置,属于互联网技术领域。所述方法包括:构建对网页进行标注的可视化效果框架;获取对网页各部分内容区域进行标注的指示;记录内容区域与标注指示的对应关系,得到网页模板。根据本发明,能够提高生成网页模板的效率和准确性。

Description

生成网页模板的方法及装置
技术领域
本发明涉及互联网技术领域,具体涉及一种生成网页模板的方法及装置。
背景技术
网页模板可以用于抽取网页的内容,比如有的搜索引擎在抓取网站时使用了定向采集技术,定向采集的蜘蛛使用网页模板把网站的相关内容抽取出来,获得格式化的内容,包括网页的标题、作者、发表时间和正文等信息。
现有的一种生成网页模板的方法为:首先,根据页面的URL(Uniform ResourceLocator,统一资源定位符),下载页面的源代码;其次,根据页面的源代码对页面结构进行自动分析,计算出页面中各结构的哈希值;然后,根据页面的源代码人工判断页面中哪些结构对应标题,哪些结构对应正文,哪些结构对应发表时间等,并进行标记;最后,生成结构的哈希值与结构的内容类型的对应关系,得到网页模板。
现有的生成网页模板方法至少存在如下缺点:
人工标记页面结构的内容类型是通过文本编辑进行的,网页模板里面有大量的不相关的内容,有的网页模板甚至有好几万行,导致人工标记的效率非常低;
网页模板中的各种内容夹杂在网页代码中,由于网页内容没有直观的呈现出来,如果对网页设计语言不熟,则不容易确定页面结构的内容类型,人工标记时就容易出错,导致生成的网页模板的准确性不高,进而导致根据该网页模板进行内容抽取的准确性也不高。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的生成网页模板的方法及装置。
依据本发明的一个方面,提供了一种生成网页模板的方法,所述方法包括:
构建对网页进行标注的可视化效果框架;
获取对网页各部分内容区域进行标注的指示;
记录内容区域与标注指示的对应关系,得到网页模板。
可选地,所述可视化效果框架包括内容区域、位于选中的内容区域上方的蒙版和标注菜单,所述标注菜单包括多种内容类型菜单项;
所述获取对网页各部分内容区域进行标注的指示包括:获取通过标注菜单选择的内容类型。
可选地,在构建对网页进行标注的可视化效果框架之前,所述方法还包括:
获取网页的源代码,根据所述源代码生成所述网页的DOM树;
获取所述DOM树中各节点对应的标签的哈希值;
为所述网页的各标签添加哈希值属性;
所述记录内容区域与标注指示的对应关系,包括:记录内容区域所属标签的哈希值与选择的内容类型的对应关系。
可选地,所述方法还包括:对根据同一资源站点下的多个网页生成的多个网页模板进行统计,提取所述多个网页模板中的相同部分生成最终的网页模板。
可选地,所述获取所述DOM树中各节点对应的标签的哈希值,包括:
为所述网页的各标签添加索引属性;
将添加索引属性后的网页的源代码发送到服务端,以供服务端进行标签的哈希值计算;
接收服务端发送的标签索引值与哈希值的对应关系。根据本发明的另一方面,提供了一种生成网页模板的装置,所述装置包括:
可视化效果框架构建器,适于构建对网页进行标注的可视化效果框架;
标注指示获取器,适于获取对网页各部分内容区域进行标注的指示;
网页模板生成器,适于记录内容区域与标注指示的对应关系,得到网页模板。
可选地,所述可视化效果框架包括内容区域、位于选中的内容区域上方的蒙版和标注菜单,所述标注菜单包括多种内容类型菜单项;
所述标注指示获取器进一步适于:获取通过标注菜单选择的内容类型。
可选地,所述装置还包括:
DOM树生成器,适于获取网页的源代码,根据所述源代码生成所述网页的DOM树;
哈希值获取器,适于获取所述DOM树中各节点对应的标签的哈希值;
哈希值属性添加器,适于为所述网页的各标签添加哈希值属性;
所述网页模板生成器进一步适于:记录内容区域所属标签的哈希值与选择的内容类型的对应关系,得到网页模板。
可选地,所述装置还包括统计器,适于对根据同一资源站点下的多个网页生成的多个网页模板进行统计,提取所述多个网页模板中的相同部分生成最终的网页模板。
可选地,所述哈希值获取器进一步适于:
为所述网页的各标签添加索引属性;
将添加索引属性后的网页的源代码发送到服务端,以供服务端进行标签的哈希值计算;
接收服务端发送的标签索引值与哈希值的对应关系。
根据本发明上述的一个或多个技术方案,通过构建对网页进行标注的可视化效果框架,不需要手工编辑网页模板文本,只需要在所述可视化效果框架中选择网页内容区域进行可视化操作,即可轻松定义网页模板,提高了生成网页模板的效率;而且,由于网页内容被直观的呈现出来,不需要具备网页设计方面的专业知识,就很容易确定页面结构的内容类型,提高了生成网页模板的准确性。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的生成网页模板的方法流程图;
图2示出了本发明实施例中对网页的标题进行标注的示意图;
图3示出了本发明实施例中对网页的正文进行标注的示意图;
图4示出了根据本发明一个实施例的生成网页模板的方法详细流程图;
图5示出了根据本发明一个实施例的生成网页模板的装置结构图;
图6示出了根据本发明一个实施例的对网页提供可视化标注的方法流程图;
图7示出了根据本发明一个实施例的对网页提供可视化标注的装置结构图;
图8示出了根据本发明一个实施例的根据可视化模板进行网页内容抽取的方法流程图;
图9示出了根据本发明一个实施例的根据可视化模板进行网页内容抽取的装置结构图;
图10示出了根据本发明一个实施例的根据可视化模板进行网页内容抽取的系统结构图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
实施例1
本实施例提供一种生成网页模板的方法及装置
图1示出了根据本发明一个实施例的生成网页模板的方法流程图,参照图1,所述方法包括:
步骤102,构建对网页进行标注的可视化效果框架;
在一种实现方式中,所述可视化效果框架可以包括:内容区域、位于选中的内容区域上方的蒙版和标注菜单,所述标注菜单包括多种内容类型菜单项。
通过获取网页的源代码例如html(hypertext mark-up language,超文本标记语言)文档,将样式表文件例如css(cascading style sheets,层叠样式表) 文件附加到html文档,并在html文档中增加js(javascript)脚本,可以构建网页的可视化效果框架。具体地,通过js脚本可以实现当检测到某个内容区域被选中时,在选中的内容区域上方出现蒙版和标注菜单,所述蒙版和标注菜单的显示方式可以由样式表文件中定义的规则来限定。
根据上述的可视化效果框架,网页在浏览器中进行显示时,网页的各部分内容区域会具有可视化效果,某个内容区域被选中时(例如检测到鼠标移动到该内容区域上方,又例如,在触摸屏中检测到对该内容区域的点击或者检测到在该内容区域的滑动手势),该内容区域的上方会出现蒙版,并且,该内容区域的上方会同时出现标记菜单或者根据触发出现标记菜单,例如,在被选中的内容区域上单击鼠标右键,会出现各种内容类型菜单项。如图2 和图3所示,所述内容类型菜单项可以包括“标记为标题”、“标记为正文”和“标记为日期”等,另外,所述内容类型菜单项还可以包括“保存标记”和“结束标记”等。
步骤104,获取对网页各部分内容区域进行标注的指示;
在本发明实施例中,执行标注的主体是客户端,客户端可以由用户、运营人员或管理人员进行操作。可以通过鼠标对网页进行标注,将鼠标移动到某个内容区域上方并单击鼠标右键,然后,点击某个内容类型菜单项,便可完成对该部分内容区域的标注。在触摸屏中,还可以根据对菜单项的触摸操作来选择内容类型,实现对网页的标注。如图2所示,通过单击“标记为标题”,可以将相应的内容区域标记为标题,如图3所示,通过单击“标记为正文”,可以将相应的内容区域标记为正文。
步骤106,记录内容区域与标注指示的对应关系,得到网页模板。
每标记一个内容区域,并选则“保存标记”菜单项,就可以将该内容区域与选择的内容类型的对应关系存储到网页模板中,通过选择“结束标记”菜单项,完成对网页中所有需要标记的内容区域的标记,得到该网页对应的网页模板(或者称为网页内容模板)。
可见,根据本发明实施例的技术方案,只需要在所述可视化效果框架中选择网页内容区域进行可视化操作,即可轻松定义网页模板,提高了生成网页模板的效率;而且,由于网页内容被直观的呈现出来,很容易确定页面结构的内容类型,提高了生成网页模板的准确性。
上述方案是根据一个网页来生成对应于该网页的网页模板。对于一个资源站点而言,其可能包括很多网页,这些网页一般是根据相同的网页设计模板生成,因而这些网页的结构会基本相同,有可能仅存在很少的不同之处,例如,有的网页中可能包括评论内容,而有的网页不包括评论内容,但这些网页都包括标题、作者、发表时间和正文等内容。如果对每个网页都进行上述的步骤来生成网页模板,则工作量仍然较大。
于是,为进一步提高网页模板的生成效率,所述方法还可以包括:对根据同一资源站点下的多个网页生成的多个网页模板进行统计,提取所述多个网页模板中的相同部分生成最终的网页模板。具体地,可以对资源站点包括的所有网页进行抽样,得到多个网页;然后,根据上述方法生成多个网页模板;最后,提取所述多个网页模板(网页模板中每条内容区域与内容类型的对应关系为网页模板的一个部分)中的相同部分生成最终的网页模板(或者称为该资源站点的网页模板)。
例如,对于360网站,可以先根据该网站的主页URL(http://www.360.cn/) 获取首页的HTML文档;然后对该HTML文档进行分析发现该网站包括多个(例如1000个)子网页,于是,从这1000个子网页按照预定的算法(例如随机算法)抽取50个子网页;对这50个子网页进行可视化标注后生成50 个网页模板;最后,提取这50个网页模板中的相同部分生成对应于360网站的网页模板。
另外,在本发明实施例中,为便于定位和标识网页中的内容区域,还可以为各内容区域所属的标签添加哈希值属性,相应地,在网页模板中存储的就是内容区域所属标签的哈希值与选择的内容类型的对应关系。在此种情况下,本发明实施例的生成网页模板的方法在构建对网页进行标注的可视化效果框架的步骤之前,还可以包括如下步骤:
首先,获取网页的源代码,根据所述源代码生成所述网页的DOM (DocumentObject Model,文档对象模型)树;
然后,获取所述DOM树中各节点对应的标签的哈希值;
最后,为所述网页的各标签添加哈希值属性。
其中,所述哈希值可以包括标签在所述DOM树中的层级哈希值和标签自身的哈希值。标签在DOM树中的层级哈希值可以根据当前标签所在的 DOM树的层级关系计算出来,标签自身的哈希值可以根据当前标签所拥有的属性节点计算出来。
在具体实现时,可以由服务端来进行标签的哈希值计算。如图10所示,服务端201位于搜索引擎200中,搜索引擎200与多个(图中示出了3个) 第三方网站服务器300通信连接,服务端201 可以配合客户端100来生成网页模板。此种情况下,所述获取所述DOM树中各节点对应的标签的哈希值可以包括:
首先,在客户端100为所述网页的各标签添加索引属性;
然后,客户端100将添加索引属性后的网页的源代码发送到服务端201 ;
其次,服务端201 进行标签的哈希值计算;
最后,服务端201 将标签索引值与哈希值的对应关系发送到客户端100。
在实施本发明时,客户端的操作可以包括如下步骤:
首先,在客户端安装可视化效果框架生成插件,并访问第三方网站服务器300中的网页;
然后,在一种实现方式中,鼠标移动到网页内容区域上方,内容区域的上方出现淡蓝色的蒙版,表示该内容区域被选中,右键单击,出现选择菜单,可以选择该内容区域属于标题、正文等内容类型;
最后,标记完成后,客户端生成网页模板。
客户端可以把生成的网页模板发送给服务端,服务端在进行定向采集网页内容时即可使用该网页模板进行信息采集。
以下给出一个本发明实施例的生成网页模板的方法一个详细流程。参照图4,所述方法包括:
步骤402,客户端获取网页的源代码,根据所述源代码生成所述网页的 DOM树;
步骤404,客户端为DOM树的每个标签添加索引属性,其中,DOM树的遍历可以使用深度优先的算法进行;
步骤406,客户端把添加索引(index)属性后的网页的源代码发送给服务端,发送的内容例如为:
步骤408,服务端接收客户端发送的添加了索引属性的源代码,对源代码进行分析,计算出整个页面结构相关标签的哈希值,并将所有计算出来的哈希值返回给客户端;
服务端计算出来的哈希值与标签的索引相对应,可以包装成json格式返回客户端,json内容格式例如为:{标签索引值:{哈希1:hash1,哈希2: hash2}...}。
步骤410,客户端接收服务端返回的json数据,通过标签索引值与哈希值的对应关系,为相应的标签加上两个属性值:标签在所述DOM树中的层级哈希值frame_hash和标签自身的哈希值self_hash;
例如,一个添加了哈希值属性的div标签内容如下:
<div frame_hash=”46131321231613”self_hash=”174461815164”index=”45”> content
</div>
其中,frame_hash哈希值是根据当前标签所在的DOM树的层级关系计算出来的,例如:
如果计算div标签的frame_hash,可以对“html body div”这个串进行 md5计算出一个哈希值,算法可以有多种,本发明实施例对具体的算法不做限制。
而self_hash哈希值是根据当前标签所拥有的属性节点计算出来的,例如div标签有class属性和id属性,则可以根据“class:name id:author”这个串进行md5计算出一个哈希值,算法也可以有多种,本发明实施例对具体的算法不做限制。
这样,就可以根据frame_hash和self_hash定位到DOM树的一个节点。
步骤412,客户端根据哈希值属性,为网页的页面元素加上可视化的效果,在一种实现方式中,鼠标移动到该元素上方,该元素的上方有浅蓝色的蒙版,表示该元素的内容区域被选中,在被选中的内容区域上右键单击,出现“标记为标题”、“标记为正文”等菜单项。
步骤414,对网页的各内容区域进行标记时,客户端记录下内容区域的哈希值与标记的内容类型的对应关系,生成网页模板,网页模板的内容例如为:
frame_hash:243092489 self_hash:49348393标题
frame_hash:434389298 self_hash:23439438作者
frame_hash:023473843 self_hash:34934932正文
frame_hash:483928384 self_hash:23487388日期
步骤416,客户端将生成的网页模板发送给服务端,服务端保存客户端发送的网页模板,定向采集该网站时,使用该网页模板把网页的标题、正文、内容等抽取出来。
本发明实施例还提供一种生成网页模板的装置,参照图5,所述装置包括可视化效果框架构建器10、标注指示获取器20和网页模板生成器30,其中:
可视化效果框架构建器10适于构建对网页进行标注的可视化效果框架。在一种实现方式中,所述可视化效果框架包括:内容区域、位于选中的内容区域上方的蒙版和标注菜单,所述标注菜单包括多种内容类型菜单项。可视化效果框架构建器10通过获取网页的源代码例如html文档,将样式表文件例如css文件附加到html文档,并在html文档中增加js脚本,可以构建网页的可视化效果框架。
标注指示获取器20适于获取对网页各部分内容区域进行标注的指示。可以通过鼠标或者触摸屏对网页进行标注,例如,将鼠标移动到某个内容区域上方并单击鼠标右键,然后,点击某个内容类型菜单项来完成对该部分内容区域的标注,标注指示获取器20可以检测到标注操作,并获取通过右键菜单选择的内容类型。
网页模板生成器30适于记录内容区域与标注指示的对应关系,得到网页模板。标注指示获取器20获取到选择的内容类型后,网页模板生成器30可以记录内容区域与选择的内容类型的对应关系,从而生成网页模板。
可选地,所述装置还包括统计器(图未示),适于对根据同一资源站点下的多个网页生成的多个网页模板进行统计,提取所述多个网页模板中的相同部分生成最终的网页模板。
在本发明实施例中,为便于定位和标识网页中的内容区域,还可以为各内容区域所属的标签添加哈希值属性。因此,本发明实施例的生成网页模板的装置还可以包括DOM树生成器、哈希值获取器和哈希值属性添加器。通过DOM树生成器来获取网页的源代码,并根据所述源代码生成所述网页的 DOM树;通过哈希值获取器来获取所述DOM树中各节点对应的标签的哈希值;通过哈希值属性添加器为所述网页的各标签添加哈希值属性。其中,所述哈希值可以包括:标签在所述DOM树中的层级哈希值和标签自身的哈希值。标签在DOM树中的层级哈希值可以根据当前标签所在的DOM树的层级关系计算出来,标签自身的哈希值可以根据当前标签所拥有的属性节点计算出来。相应地,所述网页模板生成器30通过记录内容区域所属标签的哈希值与选择的内容类型的对应关系来得到网页模板。
在具体实现时,可以由服务端来进行标签的哈希值计算。此种情况下,所述哈希值获取器进一步按照如下方式来得到标签的哈希值:为所述网页的各标签添加索引属性;将添加索引属性后的网页的源代码发送到服务端,以供服务端进行标签的哈希值计算;接收服务端发送的标签索引值与哈希值的对应关系。
需要说明的是,实施例1中的方法的各步骤可以根据需要进行分割和取舍,实施例1中的装置的各模块也可以根据需要进行分割和取舍。例如,由步骤102和步骤104构成一种对网页提供可视化标注的方法,由可视化效果框架构建器10和标注指示获取器20构成一种对网页提供可视化标注的装置。
实施例2
本实施例提供一种对网页提供可视化标注的方法及装置。
图6示出了根据本发明一个实施例的对网页提供可视化标注的方法流程图,参照图6,所述方法包括:
步骤602,构建通过位于网页内容区域上方的蒙版对网页进行标注的可视化效果框架;
所述可视化效果框架可以包括:内容区域、位于选中的内容区域上方的蒙版和标注菜单,所述标注菜单包括多种内容类型菜单项。
通过获取网页的源代码例如html文档,将样式表文件例如css文件附加到html文档,并在html文档中增加js(javascript)脚本,可以构建网页的可视化效果框架。具体地,通过js脚本可以实现当检测到某个内容区域被选中时,在选中的内容区域上方出现蒙版和标注菜单,所述蒙版和标注菜单的显示方式可以由样式表文件中的规则来限定。
根据上述的可视化效果框架,网页在浏览器中进行显示时,网页的各部分内容区域会具有可视化效果,某个内容区域被选中时(例如检测到鼠标移动到该内容区域上方,又例如,在触摸屏中检测到对该内容区域的点击或者检测到在该内容区域的滑动手势),该内容区域的上方会出现蒙版,并且,该内容区域的上方会同时出现标记菜单或者根据触发出现标记菜单,例如,在被选中的内容区域上单击鼠标右键,会出现各种内容类型菜单项。如图2 和图3所示,所述内容类型菜单项可以包括“标记为标题”、“标记为正文”和“标记为日期”等,另外,所述内容类型菜单项还可以包括“保存标记”和“结束标记”等。
步骤604,获取在所述蒙版上对网页各部分内容区域进行标注的指示。
所述指示可以为通过标注菜单选择的对应于选中的内容区域的内容类型。在本发明实施例中,执行标注的主体是客户端,客户端可以由用户、运营人员或管理人员进行操作。可以通过鼠标对网页进行标注,将鼠标移动到某个内容区域上方并单击鼠标右键,然后,点击某个内容类型菜单项,便可完成对该部分内容区域的标注。在触摸屏中,还可以根据对菜单项的触摸操作来选择内容类型,实现对网页的标注。如图2所示,通过单击“标记为标题”,可以将相应的内容区域标记为标题,如图3所示,通过单击“标记为正文”,可以将相应的内容区域标记为正文。
可见,根据本发明实施例的技术方案,通过构建可视化效果框架,可以对网页进行可视化标注,提高了标注的效率;而且,由于网页内容被直观的呈现出来,很容易确定页面结构的内容类型,提高了标注的准确性。
另外,在本发明实施例中,为便于定位和标识网页中的内容区域,还可以为各内容区域所属的标签添加哈希值属性。在此种情况下,本发明实施例的对网页提供可视化标注的方法方法在构建对网页进行标注的可视化效果框架的步骤之前,还可以包括如下步骤:
首先,获取网页的源代码,根据所述源代码生成所述网页的DOM树;
然后,获取所述DOM树中各节点对应的标签的哈希值;
最后,为所述网页的各标签添加哈希值属性。
其中,所述哈希值可以包括标签在所述DOM树中的层级哈希值和标签自身的哈希值。标签在DOM树中的层级哈希值可以根据当前标签所在的 DOM树的层级关系计算出来,标签自身的哈希值可以根据当前标签所拥有的属性节点计算出来。
在具体实现时,可以由服务端来进行标签的哈希值计算。如图10所示,服务端201位于搜索引擎200中,搜索引擎200与多个(图中示出了3个) 第三方网站服务器300通信连接,服务端201 可以配合客户端100来生成网页模板。此种情况下,所述获取所述DOM树中各节点对应的标签的哈希值可以包括:
首先,在客户端100为所述网页的各标签添加索引属性;
然后,客户端100将添加索引属性后的网页的源代码发送到服务端201 ;
其次,服务端201 进行标签的哈希值计算;
最后,服务端201 将标签索引值与哈希值的对应关系发送到客户端100。
在实施本发明时,客户端的标注操作可以包括如下步骤:首先,在客户端安装可视化效果框架生成插件,并访问第三方网站服务器300中的网页;然后,在一种实现方式中,鼠标移动到网页内容区域上方,内容区域的上方出现淡蓝色的蒙版,表示该内容区域被选中,右键单击,出现选择菜单,可以选择该内容区域属于标题、正文等内容类型;反复执行上述步骤,完成对网页的标注。
本发明实施例还提供一种对网页提供可视化标注的装置,参照图7,所述装置包括可视化效果框架构建器10和标注指示获取器20,其中:
可视化效果框架构建器10适于构建通过位于网页内容区域上方的蒙版对网页进行标注的可视化效果框架。在一种实现方式中,所述可视化效果框架包括:内容区域、位于选中的内容区域上方的蒙版和标注菜单,所述标注菜单包括多种内容类型菜单项。可视化效果框架构建器10通过获取网页的源代码例如html文档,将样式表文件例如css文件附加到html文档,并在html 文档中增加js脚本,可以构建网页的可视化效果框架。
标注指示获取器20适于获取在所述蒙版上对网页各部分内容区域进行标注的指示,所述指示为通过标注菜单选择的对应于选中的内容区域的内容类型。可以通过鼠标或者触摸屏对网页进行标注,例如,将鼠标移动到某个内容区域上方并单击鼠标右键,然后,点击某个内容类型菜单项来完成对该部分内容区域的标注,标注指示获取器20可以检测到标注操作,并获取通过右键菜单选择的内容类型。
在本发明实施例中,为便于定位和标识网页中的内容区域,还可以为各内容区域所属的标签添加哈希值属性。因此,本发明实施例的对网页提供可视化标注的装置还可以包括DOM树生成器、哈希值获取器和哈希值属性添加器。通过DOM树生成器来获取网页的源代码,并根据所述源代码生成所述网页的DOM树;通过哈希值获取器来获取所述DOM树中各节点对应的标签的哈希值;通过哈希值属性添加器为所述网页的各标签添加哈希值属性。其中,所述哈希值可以包括:标签在所述DOM树中的层级哈希值和标签自身的哈希值。标签在DOM树中的层级哈希值可以根据当前标签所在的DOM 树的层级关系计算出来,标签自身的哈希值可以根据当前标签所拥有的属性节点计算出来。
在具体实现时,可以由服务端来进行标签的哈希值计算。此种情况下,所述哈希值获取器进一步按照如下方式来得到标签的哈希值:为所述网页的各标签添加索引属性;将添加索引属性后的网页的源代码发送到服务端,以供服务端进行标签的哈希值计算;接收服务端发送的标签索引值与哈希值的对应关系。
实施例3
本实施例提供一种根据可视化模板进行网页内容抽取的方法及装置。
图10示出了根据本发明一个实施例的根据可视化模板进行网页内容抽取的系统结构图。参照图10,所述系统包括客户端100、搜索引擎200和多个(图中示出了3个)第三方网站服务器300,搜索引擎200中包括服务端201 ,搜索引擎200与第三方网站服务器300通信连接,服务端201 可以配合客户端100来生成网页模板,搜索引擎200可以根据网页模板进行网页内容抽取,即根据网页模板抽取第三方网站服务器300中网页的结构化内容。
图8示出了根据本发明一个实施例的根据可视化模板进行网页内容抽取的方法流程图。参照图8,所述方法包括:
步骤802,定向抓取目标网站时,查找网页模板库中是否记录有对应所述目标网站的根据可视化标注生成的网页模板;
网页模板库中保存有根据可视化标注生成的网页模板到。所述网页模板可以是根据实施例1或实施例2的方案生成的网页模板。网页模板库中存储有多个网页模板,所述网页模板可以用网站的主页URL进行标识。可以根据目标网站的主页URL来查找网页模板库中是否有对应的网页模板。
步骤804,如果网页模板库中记录有对应所述目标网站的根据可视化标注生成的网页模板,则根据所述网页模板对所述目标网站进行内容抽取。
可以根据主页URL提取主页中的所有外部链接的URL,去除其中向别的网站跳出的部分,将剩下的URL放入调度队列;然后,根据所述网页模板对调度队列中URL对应的网页分别进行内容抽取。可以使用网页抓取器来执行所述内容抽取,所述网页抓取器可以是网络蜘蛛、网页爬虫、搜索机器人或网络抓取脚本程序等。
在本发明实施例的技术方案中,采用可视化标注生成的网页模板来进行网页内容抽取,由于该网页模板的准确性较高,因此,根据该网页模板进行内容抽取的准确性也得到了提高。
图9示出了根据本发明一个实施例的根据可视化模板进行网页内容抽取的装置结构图。参照图9,所述装置包括网页模板库902、查找器904和内容抽取器906,其中:
网页模板库902适于保存根据可视化标注生成的网页模板,所述网页模板可以用网页的URL进行标识,也可以用网站的主页URL进行标识。
查找器904适于定向抓取目标网站时查找网页模板库中是否记录有对应所述目标网站的根据可视化标注生成的网页模板。
内容抽取器906适于当网页模板库中记录有对应所述目标网站的根据可视化标注生成的网页模板时,根据所述网页模板对所述目标网站进行内容抽取。内容抽取器906可以根据主页URL提取主页中的所有外部链接的URL,去除其中向别的网站跳出的部分,将剩下的URL放入调度队列;然后,根据所述网页模板对调度队列中URL对应的网页分别进行内容抽取。内容抽取器 906可以是网络蜘蛛、网页爬虫、搜索机器人或网络抓取脚本程序等。
可选地,所述装置还包括用于生成网页模板的装置,即可以包括实施例 1中的可视化效果框架构建器10、标注指示获取器20和网页模板生成器30,这些模块的连接关系和工作原理可参见实施例1中的描述。
综上所述,根据本发明实施例的技术方案,通过构建对网页进行标注的可视化效果框架,不需要手工编辑网页模板文本,只需要在所述可视化效果框架中选择网页内容区域进行可视化操作即可完成对网页内容的标注,提高了标注的效率,进而提高了生成网页模板的效率;而且,由于网页内容被直观的呈现出来,不需要具备网页设计方面的专业知识,就很容易确定页面结构的内容类型,提高了标注的准确性,进而提高了生成网页模板的准确性;进一步,由于网页模板的准确性得到了提高,这样,根据该网页模板进行网页抓取获得的内容的准确性也得到了提高。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的生成网页模板的装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

Claims (10)

1.一种生成网页模板的方法,包括:
构建对网页进行标注的可视化效果框架,所述可视化效果框架包括内容区域、位于选中的内容区域上方的蒙版和标注菜单,所述标注菜单包括多种内容类型菜单项;
获取在所述蒙版上对网页各部分内容区域进行标注的指示;
记录内容区域与标注指示的对应关系,得到网页模板;
其中,在构建对网页进行标注的可视化效果框架之前,所述方法还包括:
获取网页的源代码,根据所述源代码生成所述网页的DOM树;
获取所述DOM树中各节点对应的标签的哈希值;
为所述网页的各标签添加哈希值属性;所述哈希值属性用于为网页页面元素加上可视化效果。
2.如权利要求1所述的方法,其中:
所述获取在所述蒙版上对网页各部分内容区域进行标注的指示,包括:获取通过标注菜单选择的内容类型。
3.如权利要求2所述的方法,其中,所述记录内容区域与标注指示的对应关系,包括:
记录内容区域所属标签的哈希值与选择的内容类型的对应关系。
4.如权利要求3所述的方法,其中,还包括:
对根据同一资源站点下的多个网页生成的多个网页模板进行统计,提取所述多个网页模板中的相同部分生成最终的网页模板。
5.如权利要求3所述的方法,其中,所述获取所述DOM树中各节点对应的标签的哈希值,包括:
为所述网页的各标签添加索引属性;
将添加索引属性后的网页的源代码发送到服务端,以供服务端进行标签的哈希值计算;
接收服务端发送的标签索引值与哈希值的对应关系。
6.一种生成网页模板的装置,包括:
DOM树生成器,适于获取网页的源代码,根据所述源代码生成所述网页的DOM树;
哈希值获取器,适于获取所述DOM树中各节点对应的标签的哈希值;
哈希值属性添加器,适于为所述网页的各标签添加哈希值属性;所述哈希值属性用于为网页页面元素加上可视化效果;
可视化效果框架构建器,适于构建对网页进行标注的可视化效果框架,所述可视化效果框架包括内容区域、位于选中的内容区域上方的蒙版和标注菜单,所述标注菜单包括多种内容类型菜单项;
标注指示获取器,适于获取在所述蒙版上对网页各部分内容区域进行标注的指示;
网页模板生成器,适于记录内容区域与标注指示的对应关系,得到网页模板。
7.如权利要求6所述的装置,其中:
所述标注指示获取器进一步适于:获取通过标注菜单选择的内容类型。
8.如权利要求7所述的装置,其中,所述网页模板生成器进一步适于:记录内容区域所属标签的哈希值与选择的内容类型的对应关系,得到网页模板。
9.如权利要求8所述的装置,其中,还包括:
统计器,适于对根据同一资源站点下的多个网页生成的多个网页模板进行统计,提取所述多个网页模板中的相同部分生成最终的网页模板。
10.如权利要求8所述的装置,其中,所述哈希值获取器进一步适于:
为所述网页的各标签添加索引属性;
将添加索引属性后的网页的源代码发送到服务端,以供服务端进行标签的哈希值计算;
接收服务端发送的标签索引值与哈希值的对应关系。
CN201310606200.7A 2013-11-25 2013-11-25 生成网页模板的方法及装置 Active CN103678509B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310606200.7A CN103678509B (zh) 2013-11-25 2013-11-25 生成网页模板的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310606200.7A CN103678509B (zh) 2013-11-25 2013-11-25 生成网页模板的方法及装置

Publications (2)

Publication Number Publication Date
CN103678509A CN103678509A (zh) 2014-03-26
CN103678509B true CN103678509B (zh) 2017-11-10

Family

ID=50316054

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310606200.7A Active CN103678509B (zh) 2013-11-25 2013-11-25 生成网页模板的方法及装置

Country Status (1)

Country Link
CN (1) CN103678509B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103955366B (zh) * 2014-04-18 2017-04-19 南威软件股份有限公司 一种可视化网站模版的制作方法
CN107085578B (zh) * 2016-02-16 2020-05-12 腾讯科技(深圳)有限公司 一种网页编辑方法和装置
CN107291429A (zh) * 2016-03-30 2017-10-24 阿里巴巴集团控股有限公司 网页生成方法和装置
CN105912613A (zh) * 2016-04-06 2016-08-31 江苏中威科技软件系统有限公司 一种网站模板快速迁移的方法
CN106096049A (zh) * 2016-06-29 2016-11-09 江苏中威科技软件系统有限公司 一种可视化生成网页模板的方法及系统
CN108021598B (zh) * 2016-11-04 2022-05-03 阿里巴巴(中国)有限公司 页面抽取模板匹配方法、装置及服务器
CN107423322B (zh) * 2017-03-31 2020-03-03 广州视源电子科技股份有限公司 网页页面的标签嵌套层级的显示方法和装置
CN108334480A (zh) * 2018-02-27 2018-07-27 智言科技(深圳)有限公司 网页信息提取的方法及装置
JP7175030B2 (ja) * 2018-06-21 2022-11-18 株式会社Tsunagu.AI ウェブコンテンツ自動生成システム

Also Published As

Publication number Publication date
CN103678509A (zh) 2014-03-26

Similar Documents

Publication Publication Date Title
CN103678509B (zh) 生成网页模板的方法及装置
CN103678511B (zh) 根据可视化模板进行网页内容抽取的方法及装置
US10838605B2 (en) Reactive graphical display of real-time values
US20210248204A1 (en) Systems and methods for automatically identifying and linking names in digital resources
CN103678510B (zh) 对网页提供可视化标注的方法及装置
Blismas et al. Computer-aided qualitative data analysis: panacea or paradox?
US10423697B2 (en) User interface with navigation controls for the display or concealment of adjacent content
CN102360368A (zh) 基于抽取模板可视化定制的Web数据抽取方法
TW201250492A (en) Method and system of extracting web page information
Huynh et al. Enabling web browsers to augment web sites' filtering and sorting functionalities
CN102135976B (zh) 超文本标识语言页面结构化数据提取方法及装置
CN105095067A (zh) 用户界面元素对象识别及自动化测试的方法和装置
US10789302B2 (en) Method and system for extracting user-specific content
Al-Msie'deen Tag clouds for object-oriented source code visualization
JP5380874B2 (ja) 情報検索方法、プログラム及び装置
Sellers et al. Taking the OXPath down the deep web
JP5652519B2 (ja) 情報検索方法、プログラム及び装置
Neeli et al. Automated data mining from web servers using perl script
Wara A Framework for Fashion Data Gathering, Hierarchical-Annotation and Analysis for Social Media and Online Shop: TOOLKIT FOR DETAILED STYLE ANNOTATIONS FOR ENHANCED FASHION RECOMMENDATION
TWI237780B (en) Online extraction rule analysis for semi-structured documents
Huhtamäki et al. Context-driven social network visualisation: Case wiki co-creation
CN110020369A (zh) 一种网页裁剪方法及系统
Sellers Navigating the Deep Web with OXPath
CN112883250A (zh) 生成埋点标识的方法、装置和埋点的方法
CN109726341A (zh) 一种基于网页分类和聚类的网页信息自动抽取方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220725

Address after: Room 801, 8th floor, No. 104, floors 1-19, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100015

Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park)

Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Patentee before: Qizhi software (Beijing) Co.,Ltd.