一种网络信息抓取方法和装置制造方法及图纸

技术编号:9765817 阅读:114 留言:0更新日期:2014-03-15 11:03
本发明专利技术的实施例公开了一种网络信息抓取方法和装置。涉及网络技术领域,能够直接获取动态网页中的URL和URL对应的内容。该方法包括:通过预设的浏览器客户端访问静态的统一资源定位符URL;获取静态的URL对应的超文本标记语言HTML文件;获取该HTML文件中对应可实现用户操作执行的脚本语言函数,该脚本语言函数包括:JavaScript脚本函数;解析该脚本语言函数,得到解析后的网页,并从该网页中抽取其他静态的URL,并将该网页存储,并应用正则表达式抽取其中的其他静态的URL。本发明专利技术应用于网络信息抓取。

【技术实现步骤摘要】
一种网络信息抓取方法和装置
本专利技术涉及网络
,尤其涉及一种网络信息抓取方法和装置。
技术介绍
现今很多的诸如购物搜索网站的产品开始注意到互联网中海量信息的获取和集成对于用户的重要性。在这些产品中,作为搜索引擎技术之一的网络抓取技术是整个构架出来的系统中非常重要的一个环节,能帮助各大搜索引擎抓取网页并构建网页数据库。网络抓取技术是指程序或脚本按一定的规则,自动地下载互联网中的特定内容的一项技术。网络抓取程序一般从某个特定的统一资源定位符(Uniform Resource Locator,简称URL)出发,获取访问该URL返回得到的超文本标记语(Hypertext Markup Language,简称HTML)网页,同时对该网页进行分析,从中抽取得到一系列相关的其他URL用于继续访问,从而得到一系列相关的HTML网页内容,直到遍历完整个网络,或者达到一定的条件后停止抓取。在实现上述网络抓取的过程中,专利技术人发现大量的网站开始采用JavaScript、Ajax等技术制作动态网页来完善用户的交互与体验,但这些技术也给网络抓取带来了难度。现有的网络抓取技术获取的HTML网页一般为静态网页,静态网页的特点是其内容完全由访问的URL确定,并且不同的用户访问得到的内容都是一样的;然而动态网页除了能得到静态网页的内容,还含有大量必须通过执行客户端脚本才能够得到的URL,即在动态网页中,同一个URL,不同的用户访问所获取的网页内容是不同的,因此当需要针对不同用户获取不同的个性化数据时,现有的网络抓取技术无法直接获得动态网页中的URL和URL对应的内容。
技术实现思路
本专利技术的实施例提供了一种网络信息抓取方法和装置,用以获得动态网页中的URL和URL对应的内容。为达到上述目的,本专利技术的实施例采用如下技术方案:第一方面,提供一种网络信息抓取方法,包括:通过预设的浏览器客户端访问静态的统一资源定位符URL ;获取所述静态的URL对应的超文本标记语言HTML文件;获取所述HTML文件中对应可实现用户操作执行的脚本语言函数,所述脚本语言函数包括JavaScript脚本语言函数;解析所述脚本语言函数,得到解析后的网页,并从所述网页中抽取其他静态的URL,并将所述网页存储。在第一种可能的实现方式中,根据第一方面,该方法还包括:创建所述浏览器客户端网络连接;设置所述浏览器客户端的浏览器版本及支持的脚本语言,所述脚本语言包括JavaScript脚本语言。在第二种可能的实现方式中,结合第一方面或第一种可能的实现方式,具体实现为:解析所述脚本语言函数,得到解析后的网页,并从所述网页中抽取其他静态的URL包括:通过页面解析工具解析所述脚本语言函数模拟用户操作,得到所述解析后的网页,并应用正则表达式抽取其中的所述其他静态的URL,所述解析工具包括:htmlunit分析工具。第二方面,提供了一种网络信息抓取装置,所述网络信息抓取装置包括:网页地址访问单元,用于通过预设的浏览器客户端访问静态的URL ;网页内容获取单元,用于获取所述静态的URL对应的超文本标记语言HTML文件;网页脚本程序获取单元,用于获取所述HTML文件中对应可实现用户操作执行的脚本语言函数,所述脚本语言函数包括JavaScript脚本语言函数;网页解析单元,用于解析所述脚本语言函数,得到解析后的网页,并从所述网页中抽取其他静态的URL,并将所述网页存储。在第一种可能的实现方式中,根据第二方面,所述的网络信息抓取装置还包括:网络连接单元,用于创建所述浏览器客户端网络连接;浏览器设置单元,用于设置所述浏览器客户端的浏览器版本及支持的脚本语言,所述脚本语言包括JavaScript脚本语言。在第二种可能的实现方式中,结合第二方面或第一种可能的实现方式,所述网页解析单元,具体用于通过页面解析工具解析所述脚本语言函数模拟用户操作,得到所述解析后的网页,并应用正则表达式抽取其中的所述其他静态的URL,所述解析工具包括:htmlunit分析工具。第三方面,提供了一种网络信息抓取装置,所述网络信息抓取装置包括:至少一个入口端和一个出口端以及分别与所述入口端和所述出口端连接的处理器和存储器,其中:所述处理器用于通过预设的浏览器客户端访问静态的URL ;所述存储器通过所述至少一个入口端获取所述静态的URL对应的超文本标记语言HTML文件;所述处理器还用于获取所述存储器中所述HTML文件中对应可实现用户操作执行的脚本语言函数,所述脚本语言函数包括=JavaScript脚本语言函数;所述处理器还用于解析所述脚本语言函数,得到解析后的网页,并从所述网页中抽取其他静态的URL,并将所述网页通过所述至少一个出口端发送至网页数据库存储。在第一种可能的实现方式中,结合第三方面,所述处理器还用于创建所述浏览器客户端网络连接;设置所述浏览器客户端的浏览器版本及支持的脚本语言,所述脚本语言包括:JavaScript脚本语言。在第二种可能的实现方式中,结合第三方面或第一种可能的实现方式,所述处理器具体用于通过页面解析工具解析所述脚本语言函数模拟用户操作,得到所述解析后的网页,并应用正则表达式抽取其中的所述其他静态的URL,所述解析工具包括:htmlunit分析工具。本专利技术的实施例提供的网络信息抓取方法和装置,采用对动态网页对应的静态的URL进行访问时在所得到的HTML文件中对可实现用户操作执行的脚本语言函数进行解析的方法,得到动态网页中的包含的其他URL,使得在进行网络信息的抓取时获取静态网页内容的同时还能获取动态网页中的URL和URL对应的内容。【附图说明】为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的一种网络信息抓取方法的流程示意图;图2为本专利技术实施例提供的一种网络信息抓取装置的结构示意图;图3为本专利技术实施例提供的另一种网络信息抓取装置的结构示意图;图4为本专利技术另一实施例提供的一种网络信息抓取装置的结构示意图。【具体实施方式】下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术的实施例公开一种网络信息抓取方法,如图1所示,该方法包括如下步骤:101、网络信息抓取装置通过预设的浏览器客户端访问静态的统一资源定位符URL。进一步可选的,步骤101之前还包括:101a、创建浏览器客户端网络连接;101b、设置该浏览器客户端的浏览器版本及支持的脚本语言,该脚本语言包括:JavaScript脚本语言。102、获取该静态的URL对应的超文本标记语言HTML文件。103、获取该HTML文件中对应可实现用户操作执行的脚本语言函数,该脚本语言函数包括=JavaScript脚本函数。104、解析该脚本语言函数,得到解析后的网页,并从网页中抽取其他静态的URL,并将该网页本文档来自技高网
...

【技术保护点】
一种网络信息抓取方法,其特征在于,包括:通过预设的浏览器客户端访问静态的统一资源定位符URL;获取所述静态的URL对应的超文本标记语言HTML文件;获取所述HTML文件中对应可实现用户操作执行的脚本语言函数,所述脚本语言函数包括:JavaScript脚本语言函数;解析所述脚本语言函数,得到解析后的网页,并从所述网页中抽取其他静态的URL,并将所述网页存储。

【技术特征摘要】
1.一种网络信息抓取方法,其特征在于,包括: 通过预设的浏览器客户端访问静态的统一资源定位符URL ; 获取所述静态的URL对应的超文本标记语言HTML文件; 获取所述HTML文件中对应可实现用户操作执行的脚本语言函数,所述脚本语言函数包括=JavaScript脚本语言函数; 解析所述脚本语言函数,得到解析后的网页,并从所述网页中抽取其他静态的URL,并将所述网页存储。2.根据权利要求1所述的方法,其特征在于,所述方法还包括: 创建所述浏览器客户端网络连接; 设置所述浏览器客户端的浏览器版本及支持的脚本语言,所述脚本语言包括JavaScript脚本语言。3.根据权利要求1或2所述的方法,其特征在于,解析所述脚本语言函数,得到解析后的网页,并从所述网页中抽取其他静态的URL包括: 通过页面解析工具解析所述脚本语言函数模拟用户操作,得到所述解析后的网页,并应用正则表达式抽取其中的所述其他静态的URL,所述解析工具包括:htmlunit分析工具。4.一种网络信息抓取装置,其特征在于,所述网络信息抓取装置包括: 网页地址访问单元,用于通过预设的浏览器客户端访问静态的URL ; 网页内容获取单元,用于获取所述静态的URL对应的超文本标记语言HTML文件; 网页脚本程序获取单元,用于获取所述HTML文件中对应可实现用户操作执行的脚本语言函数,所述脚本语言函数包括JavaScript脚本语言函数; 网页解析单元,用于解析所述脚本语言函数,得到解析后的网页,并从所述网页中抽取其他静态的URL,并将所述网页存储。5.根据权利要求4所述的网络信息抓取装置,其特征在于,所述装置还包括: 网络连接单元,用于创...

【专利技术属性】
技术研发人员:邓志鸿张杰赖博彦刘河
申请(专利权)人:华为技术有限公司北京大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1