页面内容获取方法和装置制造方法及图纸

技术编号:13738216 阅读:60 留言:0更新日期:2016-09-22 09:53
本申请公开了页面内容获取方法和装置。该方法的一具体实施方式包括:确定待提取的页面内容所属的页面;利用浏览器内核获取页面;利用预设脚本提取页面中的页面内容。实现了在抓取海量页面中的页面内容时,利用浏览器内核获取和加载页面,避免了因服务器对网络爬虫检查严格拒绝服务而导致的无法获取页面的情况,从而获取到海量页面。同时,通过预设脚本直接提取获取到的页面中页面内容和对页面内容进行分析,充分考虑了页面的DOM结构,简化了提取页面内容的操作。

【技术实现步骤摘要】

本申请涉及计算机
,具体涉及网络技术,尤其涉及页面内容获取方法和装置
技术介绍
网络爬虫用于抓取海量页面中的页面内容,对页面内容进行分析。目前,网络爬虫通常采用以下方式抓取海量页面中的页面内容:对于页面中存在的静态数据,将网页下载到本地,通过文本分析的方式,例如正则表达式提取页面内容。对于页面中采用Ajax动态填充的数据,直接向服务器发起Ajax请求提取页面内容。然而,当采用上述方式抓取海量页面中的页面内容时,一方面,没有考虑页面的DOM(Document Object Model,文档对象模型)结构,匹配错误的可能性较大,需要更多的代码逻辑来校验数据的正确性。另一方面,由于服务器对客户端请求会做严格的审查,模拟Ajax请求的方式容易被服务器拒绝。服务器对爬虫检查严格时,导致无法获取页面。
技术实现思路
本申请提供了页面内容获取方法和装置,用于解决上述
技术介绍
部分存在的技术问题。第一方面,本申请提供了页面内容获取方法,该方法包括:确定待提取的页面内容所属的页面;利用浏览器内核获取页面;利用预设脚本提取页面中的页面内容。第二方面,本申请提供了页面内容获取装置,该装置包括:确定单元,配置用于确定待提取的页面内容所属的页面;获取单元,配置用于利用浏览器内核获取页面;提取单元,配置用于利用预设脚本提
取页面中的页面内容。本申请提供的页面内容获取方法和装置,通过确定待提取的页面内容所属的页面;利用浏览器内核获取页面;利用预设脚本提取页面中的页面内容。实现了在抓取海量页面中的页面内容时,利用浏览器内核获取和加载页面,避免了因服务器对网络爬虫检查严格拒绝服务而导致的无法获取页面的情况,从而获取到海量页面。同时,通过预设脚本直接提取获取到的页面中页面内容和对页面内容进行分析,充分考虑了页面的DOM结构,简化了提取页面内容的操作。附图说明通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:图1是本申请可以应用于其中的示例性系统架构图;图2示出了根据本申请的页面内容获取方法的一个实施例的流程图;图3示出了根据本申请的页面内容获取方法的一个示例性流程图;图4示出了根据本申请的页面内容获取方法的另一个实施例的流程图;图5示出了根据本申请的页面内容获取装置的一个实施例的结构示意图;图6是适于用来实现本申请实施例的页面内容获取装置的计算机系统的结构示意图。具体实施方式下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关专利技术,而非对该专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关专利技术相关的部分。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例
中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。图1示出了可以应用本申请的页面内容获取方法或页面内容获取装置的实施例的示例性系统架构100。如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供传输链路的介质。网络104可以包括各种连接类型,例如有线、无线传输链路或者光纤电缆等等。用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯应用,例如浏览器类应用、即时通信工具等。终端设备101、102、103可以是具有显示屏并且支持网络通信的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上的浏览器类应用提供支持的服务器。服务器可以对接收到的页面获取请求进行处理,并将处理结果(例如页面)反馈给终端设备。应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。请参考图2,其示出了根据本申请的页面内容获取方法的一个实施例的流程200。需要说明的是,本申请实施例所提供的页面内容获取方法一般由图1中的终端设备101、102、103执行,相应地,页面内容获取装置一般设置于终端设备101、102、103中。该方法包括以下步骤:步骤201,确定待提取的页面内容所属的页面。在本实施例中,当需要从海量页面(例如第三方平台发布的安全
漏洞信息所在的页面)中获取待提取的页面内容(例如安全漏洞信息)时,可以首先确定待提取的页面内容(例如安全漏洞信息)所属的页面(例如第三方平台发布的安全漏洞信息所在的页面)。在本实施例中,可以预先接收用户(例如工程师)输入的待提取的页面内容所在的页面的URL(统一资源定位符)。例如,接收工程师在网络爬虫的主页面输入的页面的URL,根据接收到的输入的页面的URL,确定待提取的页面内容所属的页面。步骤202,利用浏览器内核获取页面。在本实施例中,在通过步骤201确定待提取的页面内容所属的页面之后,可以利用浏览器内核(也可称之为浏览器引擎)获取页面。例如,可以利用浏览器根据包含待提取的页面内容的页面对应的URL,获取包含待提取的页面内容的页面。浏览器内核可以包括但不限于:Trident内核、Gecko内核、WebKit内核。在本实施例的一些可选的实现方式中,利用浏览器内核获取页面包括:调用浏览器内核提供的获取页面的接口从页面所在的服务器获取页面。在本实施例中,可以采用以下方式利用浏览器内核获取页面:用户在浏览器浏览网页时,是通过浏览器内核生成页面获取请求,然后,向服务器发送页面获取请求而获取页面。浏览器内核的相关操作,例如获取页面的操作可以封装为接口,以供其他应用调用。在本实施例中,可以以待提取的页面内容的页面对应的URL作为浏览器内核提供的用于获取页面的接口的输入参数,从而调用浏览器内核提供的用于获取页面的接口,向服务器发送页面获取请求,得到包含待提取的页面内容的页面。在本实施例中,在利用浏览器内核获取包含待提取的页面内容页面之后,可以将页面存储在浏览器内核对应的存储空间中,然后,对页面中的页面内容进行加载,从而完成页面在浏览器内核中的加载。步骤203,利用预设脚本提取页面中的页面内容。在本实施例中,在通过步骤202利用浏览器内核获取到包含待提取内容的页面并且对页面进行加载之后,可以利用预先设置的用于提
取页面中的待提取的页面内容的预设脚本提取页面中的待提取的页面内容,然后,可以利用预设脚本对提取出的页面内容进行分析,例如,分析提取出的页面内容是否为恶意内容。在本实施例中,预设脚本可以为JavaScript脚本,可以通过该JavaScript脚本提取页面中的待提取的页面内容,对提取出的页面内容进行分析。例如,可以利用JavaScript脚本根据页面的本文档来自技高网
...

【技术保护点】
一种页面内容获取方法,其特征在于,所述方法包括:确定待提取的页面内容所属的页面;利用浏览器内核获取所述页面;利用预设脚本提取所述页面中的所述页面内容。

【技术特征摘要】
1.一种页面内容获取方法,其特征在于,所述方法包括:确定待提取的页面内容所属的页面;利用浏览器内核获取所述页面;利用预设脚本提取所述页面中的所述页面内容。2.根据权利要求1所述的方法,其特征在于,所述利用浏览器内核获取所述页面包括:调用浏览器内核提供的获取页面的接口从所述页面所在的服务器获取所述页面。3.根据权利要求1-2之一所述的方法,其特征在于,在利用浏览器内核获取所述页面之后,所述方法还包括:调用浏览器内核提供的脚本加载接口在所述页面中加载所述预设脚本。4.根据权利要求1-2之一所述的方法,其特征在于,在利用浏览器内核获取所述页面之后,所述方法还包括:将所述预设脚本嵌入到所述页面中。5.根据权利要求1所述的方法,其特征在于,所述利用浏览器内核获取所述页面包括:调用浏览器内核提供的获取页面的接口从反向代理服务器获取嵌入所述预设脚本的所述页面。6.一种页面内容获取装置,其特征在于,所述装置包括:确定单元,...

【专利技术属性】
技术研发人员:胡银厚
申请(专利权)人:百度在线网络技术北京有限公司
类型:发明
国别省市:北京;11

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

1