[发明专利]多状态AJAX网页内容获取方法及系统无效
申请号: | 201210028947.4 | 申请日: | 2012-02-09 |
公开(公告)号: | CN102609518A | 公开(公告)日: | 2012-07-25 |
发明(设计)人: | 任勇;彭兆盟;徐蕾;何能强;姜春晓;李治华;孙权 | 申请(专利权)人: | 清华大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 王莹 |
地址: | 100084 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 状态 ajax 网页 内容 获取 方法 系统 | ||
1.一种多状态AJAX网页内容获取方法,其特征在于,包括步骤:
S101:通过URL加载AJAX网页,得到网页初始状态,并在AJAX状态转换图上添加一个对应该网页初始状态的新顶点;
S102:判断顶点数是否大于阈值,若是转向步骤S111,否则转向步骤S103;
S103:提取出该网页当前状态上的每一个AJAX调用事件,若为新事件,加入到该状态对应的AJAX调用事件队列中,否则在状态转换图上添加一条边,该边始于当前状态顶点,终于目标状态顶点;
S104:判断该状态AJAX调用事件队列是否为空,若该状态AJAX调用事件队列不为空,则转向步骤S105,否则转向步骤S109;
S105:从队列中取出一个新的AJAX调用事件并执行;
S106:判断得到的状态是否为新状态,若是新状态,转向步骤S107,否则转向步骤S108;
S107:在AJAX状态转换图上添加一个对应该状态的新顶点,并添加一条从前一状态顶点到当前状态顶点的边,转向步骤S102;
S108:添加一条从前一状态顶点到当前状态顶点的边,转向步骤S104;
S109:寻找AJAX调用事件队列不为空的状态,若找到,转向步骤S110,否则转向步骤S111;
S110:导航到所述AJAX调用事件队列不为空的状态,转向步骤S105;
S111:本次抓取过程结束。
2.如权利要求1所述的方法,其特征在于,所述步骤S110中导航到AJAX调用事件队列不为空的状态的方法为:在已得到的状态转换图中找到从当前状态到新状态之间的最短路径,并执行最短路径上的事件导航到新状态。
3.如权利要求2所述的方法,其特征在于,利用dijkstra算法在状态转换图中找到对应顶点之间的最短路径。
4.如权利要求1-3中任意一项所述的方法,其特征在于,所述步骤S106中判断得到的状态是否为新状态的方法包括步骤:
S201:AJAX页面状态过滤,去除页面状态中包括无关标签及其属性的无关部分;
S202:应用AJAX重复状态检测方法比较页面状态。
5.如权利要求4所述的方法,其特征在于,所述AJAX重复状态检测方法包括步骤:
S202a:比较两个处理后的状态Hash值是否相同,若相同,则是重复状态,否则继续进行步骤S202b;
S202b:比较两个状态上的AJAX调用事件是否相同,若不相同,则是新状态;若相同则比较两个状态是否近似重复,若是,则是重复状态,否则是新状态。
6.如权利要求5所述的方法,其特征在于,所述步骤S202b中比较两个状态是否近似重复的方法包括:比较两个状态的文本长度之差、simhash值距离和编辑距离是否超过阈值,若均不超过,则是近似重复,否则是新状态。
7.一种多状态AJAX网页内容获取系统,其特征在于,包括:事件识别和执行单元(310)、页面状态识别单元(320)和状态遍历调度单元(330);
所述页面状态识别单元(320)通过URL加载AJAX网页,得到网页初始状态,并在AJAX状态转换图上添加一个对应该网页初始状态的新顶点;页面状态识别单元(320)还能够判断顶点数是否大于阈值,当顶点数大于阈值时抓取过程结束;页面状态识别单元(320)还能够判断得到的状态是否为新状态,若是新状态,在AJAX状态转换图上添加一个对应该状态的新顶点,并添加一条从前一状态顶点到当前状态顶点的边,否则添加一条从前一状态顶点到当前状态顶点的边;
所述事件识别和执行单元(310)提取出该网页当前状态上的每一个AJAX调用事件,若为新事件,加入到该状态对应的AJAX调用事件队列中,否则在状态转换图上添加一条边,该边始于当前状态顶点,终于目标状态顶点;事件识别和执行单元(310)还能够判断该状态AJAX调用事件队列是否为空,若该状态AJAX调用事件队列不为空,则从队列中取出一个新的AJAX调用事件并执行,否则寻找AJAX调用事件队列不为空的状态;
所述状态遍历调度单元(330)在抓取过程结束后遍历整个状态转换图,得到状态转换信息,获取所有状态内容。
8.如权利要求7所述的系统,其特征在于,所述事件识别和执行单元(310)用JavaScript引擎或者嵌入式浏览器来实现。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210028947.4/1.html,转载请声明来源钻瓜专利网。
- 内容再现系统、内容提供方法、内容再现装置、内容提供装置、内容再现程序和内容提供程序
- 内容记录系统、内容记录方法、内容记录设备和内容接收设备
- 内容服务系统、内容服务器、内容终端及内容服务方法
- 内容分发系统、内容分发装置、内容再生终端及内容分发方法
- 内容发布、内容获取的方法、内容发布装置及内容传播系统
- 内容提供装置、内容提供方法、内容再现装置、内容再现方法
- 内容传输设备、内容传输方法、内容再现设备、内容再现方法、程序及内容分发系统
- 内容发送设备、内容发送方法、内容再现设备、内容再现方法、程序及内容分发系统
- 内容再现装置、内容再现方法、内容再现程序及内容提供系统
- 内容记录装置、内容编辑装置、内容再生装置、内容记录方法、内容编辑方法、以及内容再生方法