获取目标页面的方法、装置、搜索引擎和浏览器制造方法及图纸

技术编号:5222851 阅读:341 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供了一种获取目标页面的方法、装置、搜索引擎和浏览器,其中方法包括:搜索引擎抓取所接收到统一资源定位符(URL)对应的基础页面以及该基础页面的脚本;对抓取的基础页面和脚本进行分析,产生基础页面对应的一条以上包含动态信息的状态路径,利用产生的状态路径抓取目标页面;其中,所述状态路径包含:基础页面的URL、基础页面中产生动态信息的文档对象模型(DOM)事件的位置信息以及DOM事件对应的回调函数索引。本发明专利技术使得搜索引擎在搜索目标页面时能够抓取页面中的动态内容。

【技术实现步骤摘要】

本专利技术涉及互联网技术,特别涉及一种获取目标页面的方法、装置、搜索引擎和浏I.I/T PLP见益。
技术介绍
随着网络的迅速发展,互联网成为大量信息的载体,如何有效地提取并利用这些 信息成为一个巨大的挑战。搜索引擎作为一个辅助人们检索信息的工具成为用户访问互联 网的入口和指南。网络爬虫(Spider)是一个自动提取网页的程序,是搜索引擎的重要组 成。传统网络爬虫从一个或若干个初始网页的统一资源定位符(URL)开始,抓取该 URL的基础页面,并对当前的基础页面内容进行解析获取目标页面的URL,并进行数据处 理,包括建立网页摘要、快照、索引并存储后,返回给浏览器供用户选择。然而,传统网络爬虫在获取目标页面的URL时,仅能够抓取静态页面,但随着互联 网技术的不断发展,页面的内容从以前的静态方式转变为动态方式生成数据,传统网络爬 虫技术显然不能满足这一转变需求,即不能够抓取页面的动态内容。
技术实现思路
本专利技术提供了一种获取目标页面的方法、装置、搜索引擎和浏览器,以便于搜索引 擎在搜索目标页面时能够抓取页面中的动态内容。具体技术方案如下—种获取目标页面的方法,该方法包括以下步骤A、抓取所接收到统一资源定位符URL对应的基础页面以及该基础页面的脚本;B、对抓取的基础页面和脚本进行分析,产生所述基础页面对应的一条以上包含动 态信息的状态路径,利用产生的状态路径抓取目标页面;其中,所述状态路径包含基础页 面的URL、基础页面中产生动态信息的文档对象模型D0M事件的位置信息以及所述D0M事件 对应的回调函数索引。其中,所述步骤B具体包括在所述基础页面以及脚本的抓取过程中下载各D0M节点,依次对下载到的D0M节 点执行步骤B11至B13,直至结束所有D0M节点的下载后,执行步骤B14 ;B11、判断当前下载到的D0M节点是否为script标签,如果是,对下一个下载到的 D0M节点转至步骤B11,否则,执行步骤B12 ;B12、判断当前下载到的D0M节点是否含有D0M事件以及回调函数,如果否,对下一 个下载到的D0M节点转至步骤B11,如果是,执行步骤B13 ;B13、利用当前下载到的D0M节点包含的D0M事件产生状态路径,并将产生的状态 路径保存在状态路径队列中,对下一个下载到的D0M节点转至步骤B11 ;B14、逐一获取状态队列中的各状态路径所对应的目标页面,判断是否产生新的页6面内容或发生页面跳转,将产生新的页面内容或发生页面跳转的状态路径确定为所述基础 页面对应的状态路径。或者,所述步骤B具体包括在所述基础页面以及脚本的抓取过程中下载各D0M节点,依次对下载到的D0M节 点执行步骤B21至B23,直至结束所有D0M节点的下载;B21、判断当前下载到的D0M节点是否为script标签,如果是,对下一个下载到的 D0M节点转至步骤B21,否则执行步骤B22 ;B22、判断当前下载到的D0M节点是否含有D0M事件以及回调函数,如果否,对下一 个下载到的D0M节点转至步骤B21,如果是,执行步骤B23 ;B23、利用当前下载到的D0M节点包含的D0M事件产生状态路径;B24、获取该状态路径所对应的目标页面,判断是否产生新的页面内容或产生页面 跳转,如果是,确定该状态路径为所述基础页面对应的状态路径,对下一个下载到的D0M节 点转至步骤B21 ;否则对下一个下载到的D0M节点转至步骤B21。上述方式中,判断是否发生页面跳转包括如果获取的目标页面和所述基础页面 的URL不同,则确定发生页面跳转。具体地,判断是否产生新的页面内容包括将获取的目标页面和所述基础页面进 行句子签名或字符串比对,如果比对结果表明目标页面和基础页面具有不同的页面内容, 则确定产生新的页面内容;或者,计算获取的目标页面和所述基础页面的相似度,如果计算结果表明目标页面和基 础页面具有不同的页面内容,则确定产生新的页面内容。其中,所述D0M事件的位置信息包括D0M节点标识、D0M节点的路径Xpath以及 D0M事件标识。更进一步地,在所述步骤B之后,该方法还包括C、存储步骤B产生的基础页面对应的状态路径以及所抓取目标页面的快照,建立 并存储目标页面的索引。一种获取目标页面的方法,基于上述方法之后,包括;接收到来自浏览器的搜索请求后,将搜索请求所包含关键词与存储的目标页面的 索引进行匹配,将匹配的目标页面所对应的状态路径包含在搜索结果中返回给浏览器,供 浏览器利用用户选择的状态路径获取对应的目标页面。另外,所述搜索结果中还可以包括所述匹配的目标页面的快照信息;接收到浏览器返回的用户选择的目标页面的快照信息后,向所述浏览器返回对应 的目标页面的快照。更进一步地,在所述将匹配的目标页面所对应的状态路径包含在搜索结果中返回 给浏览器之后,该方法还包括接收到所述浏览器发送来的用户选择的状态路径后,根据用户选择的状态路径向 目标页面站点发送目标页面请求,以便于所述目标页面站点向所述浏览器推送目标页面。一种获取目标页面的方法,该方法包括浏览器向搜索引擎发送搜索请求后,接收搜索引擎返回的包含状态路径的搜索结 果;根据用户选择的状态路径,向目标页面站点发送目标页面请求;接收所述目标页面站点推送的目标页面;其中,所述包含状态路径的搜索结果是所述搜索引擎采用权利要求8所述方法返 回的。一种获取目标页面的装置,该装置包括第一抓取单元,用于抓取所接收到统一资源定位符URL对应的基础页面以及该基 础页面的脚本;分析单元,用于对所述第一抓取单元抓取的基础页面和脚本进行分析,产生所述 基础页面对应的一条以上包含动态信息的状态路径;其中,所述状态路径包含基础页面 的URL、基础页面中产生动态信息的文档对象模型D0M事件的位置信息以及所述D0M事件对 应的回调函数索引;第二抓取单元,用于利用所述分析单元产生的状态路径抓取目标页面。其中,所述分析单元具体包括第一判断模块、第二判断模块、第一路径生成模块 和第一路径确定模块;所述第一抓取单元在所述基础页面及其脚本的抓取过程中下载各D0M节点,并将 当前下载到的D0M节点发送给所述第一判断模块,直至结束所有D0M节点的下载后,向所述 第一路径确定模块发送确定通知;所述第一判断模块,用于判断当前下载到的D0M节点是否为script标签,如果是, 触发所述第一抓取单元下载下一个D0M节点,否则,向所述第二判断模块发送判断通知;所述第二判断模块,用于判断当前下载到的D0M节点是否含有D0M事件以及回调 函数,如果否,触发所述第一抓取单元下载下一个D0M节点,如果是,向所述第一路径生成 模块发送执行通知;所述第一路径生成模块,用于接收到所述执行通知后,利用当前下载到的D0M节 点产生状态路径,并将产生的状态路径保存在状态路径队列中,触发所述第一抓取单元下 载下一个D0M节点;所述第一路径确定模块,用于接收到所述确定通知时,触发所述第二抓取单元逐 一获取状态队列中各状态路径对应的目标页面,根据所述第二抓取单元的获取结果判断是 否产生新的页面内容或发生页面跳转,将产生的新的页面内容或发生页面跳转的状态路径 确定为所述基础页面对应的状态路径。具体地,所述分析单元可以包括第三判断模块、第四判断模块、第二路径生成模 块和第二路径确定模块;所述第一抓取单元在所本文档来自技高网...

【技术保护点】
一种获取目标页面的方法,其特征在于,该方法包括以下步骤:A、抓取所接收到统一资源定位符URL对应的基础页面以及该基础页面的脚本;B、对抓取的基础页面和脚本进行分析,产生所述基础页面对应的一条以上包含动态信息的状态路径,利用产生的状态路径抓取目标页面;其中,所述状态路径包含:基础页面的URL、基础页面中产生动态信息的文档对象模型DOM事件的位置信息以及所述DOM事件对应的回调函数索引。

【技术特征摘要】
一种获取目标页面的方法,其特征在于,该方法包括以下步骤A、抓取所接收到统一资源定位符URL对应的基础页面以及该基础页面的脚本;B、对抓取的基础页面和脚本进行分析,产生所述基础页面对应的一条以上包含动态信息的状态路径,利用产生的状态路径抓取目标页面;其中,所述状态路径包含基础页面的URL、基础页面中产生动态信息的文档对象模型DOM事件的位置信息以及所述DOM事件对应的回调函数索引。2.根据权利要求1所述的方法,其特征在于,所述步骤B具体包括在所述基础页面以及脚本的抓取过程中下载各D0M节点,依次对下载到的D0M节点执 行步骤B11至B13,直至结束所有D0M节点的下载后,执行步骤B14 ;B11、判断当前下载到的D0M节点是否为script标签,如果是,对下一个下载到的D0M 节点转至步骤B11,否则,执行步骤B12 ;B12、判断当前下载到的D0M节点是否含有D0M事件以及回调函数,如果否,对下一个下 载到的D0M节点转至步骤B11,如果是,执行步骤B13 ;B13、利用当前下载到的D0M节点包含的D0M事件产生状态路径,并将产生的状态路径 保存在状态路径队列中,对下一个下载到的D0M节点转至步骤B11 ;B14、逐一获取状态队列中的各状态路径所对应的目标页面,判断是否产生新的页面内 容或发生页面跳转,将产生新的页面内容或发生页面跳转的状态路径确定为所述基础页面 对应的状态路径。3.根据权利要求1所述的方法,其特征在于,所述步骤B具体包括在所述基础页面以及脚本的抓取过程中下载各D0M节点,依次对下载到的D0M节点执 行步骤B21至B23,直至结束所有D0M节点的下载;B21、判断当前下载到的D0M节点是否为script标签,如果是,对下一个下载到的D0M 节点转至步骤B21,否则执行步骤B22 ;B22、判断当前下载到的D0M节点是否含有D0M事件以及回调函数,如果否,对下一个下 载到的D0M节点转至步骤B21,如果是,执行步骤B23 ;B23、利用当前下载到的D0M节点包含的D0M事件产生状态路径; B24、获取该状态路径所对应的目标页面,判断是否产生新的页面内容或产生页面跳 转,如果是,确定该状态路径为所述基础页面对应的状态路径,对下一个下载到的D0M节点 转至步骤B21 ;否则对下一个下载到的D0M节点转至步骤B21。4.根据权利要求2或3所述的方法,其特征在于,判断是否发生页面跳转包括如果获 取的目标页面和所述基础页面的URL不同,则确定发生页面跳转。5.根据权利要求2或3所述的方法,其特征在于,判断是否产生新的页面内容包括将 获取的目标页面和所述基础页面进行句子签名或字符串比对,如果比对结果表明目标页面 和基础页面具有不同的页面内容,则确定产生新的页面内容;或者,计算获取的目标页面和所述基础页面的相似度,如果计算结果表明目标页面和基础页 面具有不同的页面内容,则确定产生新的页面内容。6.根据权利要求1至3任一权项所述的方法,其特征在于,所述D0M事件的位置信息包 括D0M节点标识、D0M节点的路径Xpath以及D0M事件标识。7.根据权利要求1至3任一权项所述的方法,其特征在于,在所述步骤B之后,该方法还包括C、存储步骤B产生的基础页面对应的状态路径以及所抓取目标页面的快照,建立并存 储目标页面的索引。8.一种获取目标页面的方法,其特征在于,基于权利要求7所述的方法之后,包括 接收到来自浏览器的搜索请求后,将搜索请求所包含关键词与存储的目标页面的索引进行匹配,将匹配的目标页面所对应的状态路径包含在搜索结果中返回给浏览器,供浏览 器利用用户选择的状态路径获取对应的目标页面。9.根据权利要求8所述的方法,其特征在于,所述搜索结果中还包括所述匹配的目标 页面的快照信息;接收到浏览器返回的用户选择的目标页面的快照信息后,向所述浏览器返回对应的目 标页面的快照。10.根据权利要求8所述的方法,其特征在于,在所述将匹配的目标页面所对应的状态 路径包含在搜索结果中返回给浏览器之后,该方法还包括接收到所述浏览器发送来的用户选择的状态路径后,根据用户选择的状态路径向目标 页面站点发送目标页面请求,以便于所述目标页面站点向所述浏览器推送目标页面。11.一种获取目标页面的方法,其特征在于,该方法包括浏览器向搜索引擎发送搜索请求后,接收搜索引擎返回的包含状态路径的搜索结果; 根据用户选择的状态路径,向目标页面站点发送目标页面请求; 接收所述目标页面站点推送的目标页面;其中,所述包含状态路径的搜索结果是所述搜索引擎采用权利要求8所述方法返回的。12.一种获取目标页面的装置,其特征在于,该装置包括第一抓取单元,用于抓取所接收到统一资源定位符URL对应的基础页面以及该基础页 面的脚本;分析单元,用于对所述第一抓取单元抓取的基础页面和脚本进行分析,产生所述基 础页面对应的一条以上包含动态信息的状态路径;其中,所述状态路径包含基础页面的 URL、基础页面中产生动态信息的文档对象模型D0M事件的位置信息以及所述D0M事件对应 的回调函数索引;第二抓取单元,用于利用所述分析单元产生的状态路径抓取目标页面。13.根据权利要求12所述的装置,其特征在于,所述分析单元具体包括第一判断模 块、第二判断模块、第一路径生成模块和第一路径确定模块;所述第一抓取单元在所述基础页面及其脚本的抓取过程中下载各D0M节点...

【专利技术属性】
技术研发人员:潘云泓
申请(专利权)人:百度在线网络技术北京有限公司
类型:发明
国别省市:11[中国|北京]

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

1