发明名称 一种DeepWeb响应页面数据抽取方法
摘要 一种DeepWeb响应页面数据抽取方法,属于深层网络数据管理领域,该方法包括以下步骤:(1)选取DeepWeb响应页面Page;在查询页面输入关键字Key,查询得到响应页面Page;(2)抽取页面模板信息;对于响应页面的DOM树结构,找到包含关键字的孩子结点个数Wn最多的双亲结点P,将带标记的token块序列转化为带标记的token字符序列;用LCS算法处理以上两个记录的带标记的token字符序列,分隔并过滤公共token字符序列得到模板信息;(3)数据抽取;(4)token块合并;(5)数据表格聚类;本发明的有益效果:采用本发明的数据抽取方法,适用性强,精度高,效率得到大大提高。
申请公布号 CN101582074A 申请公布日期 2009.11.18
申请号 CN200910010201.9 申请日期 2009.01.21
申请人 东北大学 发明人 申德荣;于戈;孙高尚;聂铁铮;寇月;王振华
分类号 G06F17/30(2006.01)I 主分类号 G06F17/30(2006.01)I
代理机构 沈阳东大专利代理有限公司 代理人 李运萍
主权项 1、一种DeepWeb响应页面数据抽取方法,其特征是该方法包括以下步骤:步骤(1)选取DeepWeb响应页面Page在查询页面输入关键字Key,查询得到响应页面Page,响应页面Page是HTML语法描述的字符串数组,用DOM解析工具将HTML字符串转化为DOM树结构,DOM树中的结点定义:(N,K<sub>n</sub>,W<sub>n</sub>,T<sub>n</sub>),其中N表示结点N,K<sub>n</sub>表示结点N包含关键字的个数,W<sub>n</sub>表示结点N中包含关键字的孩子结点的个数,T<sub>n</sub>表示结点N的文本内容,则DOM树结构描述为:<maths num="0001"><![CDATA[<math><mrow><mi>DOM</mi><mo>=</mo><mo>{</mo><mo>(</mo><msubsup><mi>C</mi><mi>N</mi><mi>i</mi></msubsup><mo>,</mo><msub><mi>K</mi><msubsup><mi>C</mi><mi>N</mi><mi>i</mi></msubsup></msub><mo>,</mo><msub><mi>W</mi><msubsup><mi>C</mi><mi>N</mi><mi>i</mi></msubsup></msub><mo>,</mo><msub><mi>T</mi><msubsup><mi>C</mi><mi>N</mi><mi>i</mi></msubsup></msub><mo>)</mo><mo>|</mo><mo>&ForAll;</mo><mi>N</mi><mo>&Element;</mo><mi>DOM</mi><mo>,</mo><mo>(</mo><mi>root</mi><mo>,</mo><msub><mi>K</mi><mi>root</mi></msub><mo>,</mo><msub><mi>W</mi><mi>root</mi></msub><mo>,</mo><msub><mi>T</mi><mi>root</mi></msub><mo>)</mo><mo>&Element;</mo><mi>DOM</mi><mo>}</mo></mrow></math>]]></maths>其中,N为DOM树中的结点,C<sub>N</sub><sup>i</sup>为结点N的第i个孩子结点;步骤(2)抽取页面模板信息;对于响应页面的DOM树结构,找到包含关键字的孩子结点个数W<sub>n</sub>最多的双亲结点P,保存该结点的绝对路径{i<sub>1</sub>,i<sub>2</sub>,...,i<sub>n</sub>},绝对路径的起始结点为根结点root,则P结点可以表示为<maths num="0002"><![CDATA[<math><mrow><mi>P</mi><mo>=</mo><msubsup><mi>C</mi><msubsup><mi>C</mi><msubsup><mi>C</mi><msubsup><mi>C</mi><mi>root</mi><msub><mi>i</mi><mn>1</mn></msub></msubsup><msub><mi>i</mi><mn>2</mn></msub></msubsup><mrow><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo></mrow></msubsup><msub><mi>i</mi><mi>n</mi></msub></msubsup></mrow></math>]]></maths>P结点所有的孩子结点子树即为记录结点子树集;将记录结点子树集所有记录结点子树先根遍历转化为带标记的token块序列,统计记录token块序列中非空结点最小深度,记为lownum,再将带标记的token块序列转化为带标记的token字符序列;用LCS算法处理以上两个记录的带标记的token字符序列,得到一个公共token字符序列;分隔并过滤公共token字符序列得到模板信息;步骤(3)数据抽取;根据绝对路径取得记录结点的双亲结点P,P下的每个记录结点子树的根结点即为记录的根结点,先根遍历每个记录的根结点,读取文本结点的内容T<sub>n</sub>,得到一个记录的文本内容,即得到记录级数据;基于模板信息对token块进行切割,得到新的token块序列,设A为待切割的token块,B为模板信息,U为模板信息中token块集合,若A切割必需满足:①<maths num="0003"><![CDATA[<math><mrow><mo>&Exists;</mo><mi>B</mi><mo>(</mo><mi>B</mi><mo>&SubsetEqual;</mo><mi>U</mi><mo>)</mo></mrow></math>]]></maths>且②A的内容必需完全包含B的内容,并且A的token块深度等于B的token块深度;步骤(4)token块合并;依据统计值lownum继续对token块进行合并,合并规则为:(1)如果token块深度高于lownum,则将当前token块合并到下一token块中;(2)如果token块深度等于lownum时,并且下一token块深度大于lownum,则输出本token块内容;如果下一token块深度等于lownum,则当前token块合并到下一token块中;(5)数据表格聚类,得到数据块级别数据;将标有相同模板信息的token块放入数据表格的同一列,其它无标记的token块同块序列号最近的带标记的token块放在一起。
地址 110004辽宁省沈阳市和平区文化路3号巷11号