搜索引擎结果抽取通用算法

回顾了下之前开发的元搜索抽取模块,适用于所有搜索引擎和新加的微博检索,或者说类似结构的,因为业务比较专一吧,效果还是不错的,而且全自动的,大概总结下:-)



如上图大致是一个检索结果页面的DOM树结构,算法大致流程如下:

1.      找到所有锚文本链接

2.      进行分组(Rpath相同)

3.      求出每组的最小父块,找出字符数超过body子树字符总数一半的最小父块,这时可能有多个最小父块,找字符数最小的(即Rpath最长的),即html-...-div-...-div。这之后可能还有多个相同的最小父块,这时的最小父块就为数据区域块,如图阴影区域。需要记录下最小父块为数据区域块的链接组和其在链接组中的位置的对应关系

4.      对最小父块是数据区域块的链接组求出平均锚文本链接长度(文本链接比),最长的即为记录锚文本链接,比如绿色文本链接比大,绿色的就为记录锚文本链接

5.      求记录锚文本链接相对数据区域的最大父节点,即数据区域的第一层孩子节点,作为数据记录块

6.      找到数据记录块后,此处利用第一个和最后一个传统数据记录进行扩展,可以识别出其中的新型数据记录。(想用标签名、class属性识别新型数据记录,很难对所有搜索引擎都适用,从而做成通用的)

7.      数据记录块生成子树,抽取所需元信息

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值