`
wangdei
  • 浏览: 366190 次
社区版块
存档分类
最新评论

垂直搜索的信息分类如何做

阅读更多

 垂直搜索的优势就在于搜索结果的高度匹配,但垂直搜索,一般都是要借助人工的筛选,来缩小访问、搜索的范围,进而来获得最浓缩的匹配结果,在此过程中,需要涉及到行业信息资讯的详细分类划分。对于资讯类的垂直搜索,除了人工筛选,一般以都是按照页面的关键词特征进行粗略的分类。在《垂直搜索出路的思考》一文中提到的一个例子,用搜狗的分类搜索搜索“解密可口可乐秘密配方的组成”,并选择“军事”分类进行搜索,可以看到第一条是:“【股市论谈】股市战斗---多用机枪少用炮轰 -股票论坛”。其实这个是股市论坛,此页面应该是归属“财经”大类的。但搜狗判断该页面为军事,就是因为页面标题中出现多个军事相关的关键词。可见这种按照页面内的关键词进行行业划分的做法效果非常有限。

其实可以通过分析、寻找到页面所属的信息分类列表,再找出该资讯列表的标题关键词,就可以比较精确的进行行业划分了。所以理论上,这种资讯的行业划分完全可以用搜索引擎来自动精确识别划分。本文就是针对这种自动识别的技术的实现作一个探讨。技术的基本原理就是首先找到资讯信息所属资讯列表,再找到该资讯列表的标题关键词,通过分析该关键词,可以比较精确的将该资讯进行分类。其中关键和难点在于如何对混乱无章的资讯进行整理,从中理出清晰条理。

一般每个网站都有自己的核心资讯,并且,一般都要用资讯列表的方式展示出来的。除了核心资讯内容,网站还会有一些附缀资讯,比如网站介绍,网站联系方式等等,后者这些东西,可以认为是对垂直搜索引擎没什么意义的信息,是可以被排除收录的。垂直搜索,要保障搜索资讯的高度集中,就必须限制自己的收录是集中在网站的核心资讯里面。必须要去找到资讯的详细阅读页面,并从该页面中去提取核心资讯。

所以垂直搜索的资讯分类的自动识别技术的关键就是要分辨出网站的“资讯列表页面”和“详细资讯阅读页面”。后者一般都能从前者中找到自己的链接入口。

把网站的每一个页面看作一个节点,可以把整个网站看作一个“树”结构,每个节点都有至少一个入口来路,{1,n},有0或者N个出口{0,n}。可以看出这是一个混乱树的结构。如:http://www.5a520.cn 网站的

                                       __________
                                       |         网站首页          |
                                       ----------
                                           ╱                        \
                                       ╱                               \
                                   ╱                                      \
                         ________                       ________
                         | 古典诗词,列表 |                       |      现代文学     |
                         --------                       --------
                             ╱         |       \                                 ╱             \
                         ╱             |         \                           ╱                   \
                     ╱                 |           \                     ╱                         \
                ______  ___    ___        ________       _________
                |  诗词列表2  |  |F11  |    |F12...|        |  散文,列表       |       | 灌水园地,列表    |
                ------  ---    ---        --------       ---------
                       ╱      |    \                                        ╱
                   ╱          |      \                                  ╱
               ╱              |        \                            ╱
       ______  ___  ____          ________
       |  诗词列表3 |   | F21 |  | F22...  |           |   散文列表2       |
       ------  ---  ----          --------
         ╱                                                         ╱
     ╱                                                         ╱
 ________
 |  。。。。。。   |
 --------
                                            (图1)


因为页面内的链接导向是混乱的,一个页面可能包含很多指向其它页面的链接。所以图1中任意两个节点间都可能发生直接的链接。任意两节点间都能找到间接的链接。称这种间接链接的中介页面为“桥页”。因为任意两个节点之间,都可以找到链接通路,而且这来去链接通路长度和路径未必相同。从一个节点A出发,通过若干桥页后,到达某个指定节点B后,再从B节点回到A节点的路径,此处称之为“回路”。任意两节点间,肯定存在一个路径最短的回路。而且这个最短的回路可能不止一条。

搜索引擎就需要通过整理,将页面间的杂乱无章的链接整理成图1所示的清晰链接树。从图1可以看到,每个“详细资讯阅读”页面只有一个入口,且就是所属的“资讯列表”页面。每个资讯列表页面,也只有一个入口,有若干个出口。此时只要找到或者分析出“资讯列表”页面的标题字符串,我们就可以精确判断任意“详细资讯阅读”页面所属的“行业分类”了。而不再需要根据单个资讯阅读页面内有限的关键词进行并不准确的判断。

关键的问题是如何去整理这颗混乱树,把其整理出图1所示条理来。此处就作一个初步的理论探讨,仅供参考。


第一个问题:实现的基本原理

首先,需要整站下载所有页面,根据页面间的链接关系,建立一个树结构(,或者有向图结构)。设计的结构需要方便计算任意两点间的回路长度。
二、从网站页面中识别出所有的“资讯列表”页面。如何识别?后面再专述。
三、计算其它页面和资讯列表页面的“回路”,“详细资讯阅读页面”和“资讯列表”页面之间的回路是最短的,通过这点就可以轻易判断、分离。当然,最短的未必就全部是“详细资讯阅读页面”,可以后继再从中剔除。


第二个问题:如何识别“资讯列表”页面

这是最关键的部分,传统的办法是人工识别,但是可以通过资讯列表页面的特征进行自动判断的。虽然每个网站的资讯列表页面的布局都不一样,可以说是无奇不有,但是通过分析,还是可以找到通行的规律的。(此处分析只针对html页面)

一、资讯列表一般都是一行一个详细资讯,而且这样的资讯会存在多行。在剔除资讯列表内包含的可视元素后,资讯列表内每一行的html代码一般都是一样的,常见的如<tr>...</tr>,还有直接用<table>...</talbe>的,或者存在多个table联合、组合。如果一个页面内代码符合这个规律,就可以初步判断是“资讯列表”页面

二、一个页面可能存在多个符合上述特征的资讯列表,这种情况很常见,比如一个新闻列表页面会同时包含其它资讯列表,如最新资讯,点击最多的资讯等等。如何去分离、识别关键的核心资讯列表?——还是可以有规律可循的:一般核心资讯列表的可视元素比较多,字符长度比较长,而且可能包含多个附缀信息,如时间,图片等等。页面内非关键信息的资讯列表,一般只会有标题存在,而且限于版面宽度,这些标题字符长度都较短。

三、同一个资讯列表,一般都有自己的列表序列,如图1所示的“古典诗词列表1,古典诗词列表2,古典诗词列表3....”。这些列表页面的资讯列表部分的html代码规律肯定是相同的,而且相邻列表间肯定有链接存在,至少会存在一个入口链接。而且上下链接的入口的HTML代码都会很集中。相邻资讯列表间的回路肯定最短。综合这几点一般就可以轻易的分离出。当然,可能同时有到多个列表页面的回路都是最短。此时就需要另外想办法再做判断。也可都综合保留,再最终整理的时候,人为定义一下彼此间的从属关系即可,毕竟这点是丝毫不会影响到最终结果。

四、如果上述途径识别都失败了,那就都保留备用,后继过程中还可以再综合分析,通过信息阅读页面的入口路径进行反推。也可以直接忽略,因为不能符合上述特征的,一般都不会是资讯列表页面,综合起来,损失的比例会很小。

五、如网站首页,站内大栏目的首页,都会存在若干个小的资讯列表,html代码特征相同,可视元素特征相同,列表数相同。符合此特征的页面,一般都不会满足第三条条件的。是可以在整理的过程中舍去的,因为这不会我们需要寻找的资讯列表页面。
六、如果某个网站的逻辑关系很不符合常规,无法适用上述规律,此时可以考虑舍去,也可以继续使用传统方法进行搜索遍历。用传统的人工或者页面关键词特征进行划分。毕竟这样的情况只占很少比例,舍去亦无大碍。20%的方法可以解决80%的问题,如果要解决另外的20%问题,工作量就要是80%了。等到你的搜索引擎足够权威的时候,被搜索网站自然会调整自己来满足搜索引擎的偏好。


第三个问题:如何识别“详细资讯阅读页面”

这个比较容易,一般每个网页的资讯阅读页面的模版都是一样的,或者相近的,至少,每个小栏目的资讯阅读页面的模版都是相近的。
一、如果第一和第二个问题解决的比较顺利,此问题的判断就可以忽略的,从资讯列表内引出的页面,肯定就是详细阅读页面。
二、横向对比通过资讯列表引出的页面,首先剔除页面的可是元素,分析,对比html代码。html代码大致相同的页面即是。但一般只能比较页面前部分的HTML代码,后继代码可能会不相同。比如帖子的回复内容的html肯定就不能相同了。
三、对于动态页面,就更容易,资讯阅读页面的url名称一般是相同的。变化的只是页面url后面的参数
四、判断页面到资讯列表的回路,回路最短,而且是从资讯列表内引出链接的页面,肯定就是资讯阅读页面。


第四个问题:最终的整理。

通过第二步,就可以确认下资讯列表的嫌疑页面和资讯阅读页面的嫌疑页面。只是页面间的链接依旧混乱,不能达到回路最短唯一的要求。还需要再次分析。比如论坛最新的帖子一般都会展示在网站首页,如果有该论坛很大,里面的大分类都有各自的首页,该新帖子也就可能在该大分类的首页再次出现。而这个帖子的阅读页面也会有到网站首页和栏目的大分类首页的链接,此时两者之间的回路肯定都是最短的。而该帖子到所属的资讯列表的回路也是最短的,此时就出现最短回路有多个的情况,所以还需要对真正的资讯列表再次做个判断。需要舍近求远。判断从网站首页到该列表的最短单向路径长度,取该单向路径长度最长的资讯列表页面为最终结果。注意此时判断的不再是“回路”路径。
但还是有不能符合上述特征的特殊情况存在。如http://www.bt285.cn/content.php?id=1196863,因为此资讯阅读页面就没有指向资讯列表的链接,此时如果仅仅判断最短回路,就会分析失败。但如果良好的解决了第二部分的问题,此时就不必再依赖最短回路来分析。所以解决第二部分的问题,是这个自动识别技术的核心关键所在。其它部分技巧只是作为特殊情况的补充判断。

二、确认资讯列表页面和资讯阅读页面后,此时可以斩断页面的其它链接的导入、导出口,成功的简化成图1所示的结构。(其实,分析到此,此步聚可以不比执行,因为此时页面节点间的逻辑已经理顺了)。


第五个问题:对资讯列表进行行业归类。

第一步是要找到资讯列表所属的标题。一般在列表页面的标题中就可以找到关键词,但这标题可能包含很多额外的附缀信息,这些额外的信息很可能会给分类判断带来严重的歧义影响。所以需要继续寻找其它辅助信息来辅助判断。如:资讯列表在引入页面的链接的可视标题,<a..a/>内隐含的title标注,只是同一个页面的这种引入链接的可视标题可能会多种多样,一般不会相同或相近,如常见的“首页、上页、下页、尾页”等等,需要综合灵活判断。另外如资讯列表页面也肯定会包含这个关键词,而且一般不会是用链接中可视元素的状态出现,只会是独立的关键词。如果这些标题都是使用图片的方式,而且没有页面标题,则上述判断又都会失败。最终的补救手段,可以分析资讯列表内资讯标题的关键词规律,从中找出所属行业的最大可能。这点一般不会分析失败。
找出资讯列表标题后,通过对标题进行分词,判断关键词所属的行业,最终精确判断的目的就可以完成。不过,仅仅根据有限长度的标题进行判断,还是不准,综合资讯列表内资讯标题的的关键词特征,应该就可以非常精确的进行行业划分了。
另外还有一种情况,如图1所示的“灌水园地”的栏目列表,此时如果仅仅根据列表关键词就无法进行准确归类。或者资讯列表关键词中包含的关键词都是行业分类未知的。此时可以判断该资讯列表所属父栏目的行业分类,直接继承即可。如图1中的“灌水园地”资讯列表内资讯可以归结为其父类“现代文学”。


第六个问题:从理论到实现

 

这种整站综合分析的方法,对算法、编程开发人员的技术水平都是具有很大挑战性,问题是不容易解决的。除了技术,另外必备条件是必须要有解决困难的决心,只要有决心,办法总会有的。这种算法对服务器资源的开支也是及其巨大的,所以需要权衡利弊是否采用。第一次访问、收录网站可以采用这种方法,但以后再次访问的时候,是不能再这么大规模的计算分析的,是不能每次都把整个网站整体下载下来。可以在首次分析后,记录保留每个资讯列表的入口地址,以后每次更新的时候,就可以直接访问这个入口,直接采集最新的资讯。非常的便捷。

如果该算法对你能有所启发,在欢迎你使用的同时,希望你能在此留下你的改进方法,或者指出不足之处,大家共同完善这个算法。这个算法只是我给自己的课外作业,可能自己没有机会去实际实现,所以可能也就无法继续精确完善。

 

1
0
分享到:
评论

相关推荐

    SOPI垂直搜索引擎系统 V2.2

    作用:此服务用来自动匹配字段信息,如根据网站中分析的地区信息\\行业分析信息等各类分类信息匹配成为系统需要的信息,如从网站获得的地区信息:浙江省&gt;&gt;杭州市&gt;&gt;将这一内容自动匹配为浙江省或杭州市,也可以根据企业...

    垂直搜索引擎的设计与实现

    论文研究了搜索引擎的相关技术,通过分析基于查询串方式的搜索引擎和分类目录式搜索引擎的整体结构,设计了垂直搜索引擎的系统结构,并对其中涉及的关键技术:触b搜集器、信息抽取技术、中文分词和检索技术进行了深入...

    垂直搜索引擎完全开源版 c#开发基于Lucene.net 带效果预览图片

    2.新增加采集功能,采集时图片下载,flash下载功能,默认配置的是南海网分类信息的采集规则; 3.该代码简洁,完全开源,可以与网博多款新闻系统无缝整合; 4.最新新闻系统已增加伪静态与全站生成静态功能。 5.支持上...

    垂直搜索引擎完全开源版

    网博垂直搜索引擎完全开源版 1.前台结合Lucene的搜索引擎功能,使得数据搜索更快; 2.新增加采集功能,采集时图片下载,flash下载功能,默认配置的是南海网分类信息的采集规则; 3.该代码简洁,完全开源,可以与...

    细细品味架构·基于Xapian的垂直搜索引擎的构建分析(第2期)

    1.2.1 垂直搜索的应用场景 1.2.2 垂直搜索的技术选型 1.2.3 垂直搜索的引擎架构 1.2.4 垂直搜索技术和业务细节 1.2.5 现场答疑【Q&A】 2、知识扩展 2.1 淘宝类目及标题相关性分档计算方法 2.1.1 系统预测该关键词所...

    网博垂直搜索引擎完全开源版

    2.新增加采集功能,采集时图片下载,flash下载功能,默认配置的是南海网分类信息的采集规则; 3.该代码简洁,完全开源,可以与网博多款新闻系统无缝整合; 4.最新新闻系统已增加伪静态与全站生成静态功能。 5.后台...

    乙王开源垂直搜索引擎系统asp.net版v2.0

    乙王垂直搜索引擎系统开源版能够自动提取目标网页分类栏目信息字段并自动归类,带服务端爬虫,无须自定义采集规则也能归类影片集数信息,如用于电影垂直搜索引擎等。 本垂直搜索引擎系统需要独立服务器支持,也可以用你...

    行业分类-设备装置-基于云平台的水利信息垂直搜索方法.zip

    行业分类-设备装置-基于云平台的水利信息垂直搜索方法.zip

    海林信息网制作经验分享源码下载怎样做海林分类信息网源码下载

    免费帮你做海林地区的信息网分类信息网,海林供求信息网,海林招聘信息网,生活网,海林门户,分类信息网源码 海林招聘求职信息网源码下载,海林房屋租售信息网源码下载,海林信息网源码下载,海林二手买卖信息网源码下载...

    垂直搜索引擎系统源码20110803

    垂直搜索引擎系统能够自动提取目标网页分类栏目信息字段并自动归类,带服务端爬虫,无须自定义采集规则 也能归类影片集数信息,如用于电影垂直搜索引擎等 本软件采用asp.net2.0,运行前请先安装好.net framework2.0,...

    新闻垂直搜索引擎_Part1爬虫及分类

    课程要求做一个搜索引擎,我在小组中负责爬虫及分类部分,这是我提交的文档,上面详细的说明了我的爬虫及分类的实现。

    奥搜asp垂直搜索引擎旅游版20091012

    奥搜 asp 垂直搜索引擎 旅游版20091012Aosou man是为了满足客户对行业领域数据的垂直搜索要求而开发的产品 . 比较适合于分类信息网站 , 行业信息网站 ( 如汽车 , 股票 , 房产 , 在线购物等 ), 专业板块的个性化搜索 ...

    网博垂直搜索引擎学习版

    2.新增加采集功能,采集时图片下载,flash下载功能,默认配置的是南海网分类信息的采集规则; 3.该代码简洁,完全开源,可以与网博多款新闻系统无缝整合; 4.最新新闻系统已增加伪静态与全站生成静态功能。 5.后台...

    searchengineer:垂直搜索

    垂直搜索 实现了一个小型完整的搜索引擎系统,包括网络爬虫,网页解析生成dom树,网页去噪自动提取网页正文,中文网页自动分类(libsvm),全文索 引等功能。这个项目中用C++对lucene大致实现了一遍,加深了对lucene内核...

    北碚信息网源码下载北碚分类信息网源码下载,北碚招聘信息网源码下载

    讯客分类信息系统是一套专业的信息发布类网站综合管理系统,适合各类地方信息和行业分类站点建站。随着这几年我们国家网民爆炸式的增长,网络信息也随之越来越庞大,网民对信息需求从大而全转为专业化、个性化、地域...

    讯客分类信息互动版 v1.3.rar

    讯客分类信息论坛版是一个简洁的信息发布和信息交流**台,本版专门为喜欢dz风格又不满意其臃肿复杂功能和结构的童鞋们设计的,轻,快,直接,快速发布是本版的特色。 随着这几年我们国家网民爆炸式的增长,网络信息...

    乙王垂直搜索引擎.NET MSSQL v1.0 开源版.rar

    乙王垂直搜索引擎系统能够自动提取目标网页分类栏目信息字段并自动归类,带服务端爬虫 也能归类影片集数信息,如用于电影垂直搜索引擎等 本软件采用asp.net2.0,运行前请先安装好.net framework2.0,否则不能正常运行

    讯客分类信息互动版 1.3.rar

    讯客分类信息论坛版是一个简洁的信息发布和信息交流平台,本版专门为喜欢dz风格又不满意其臃肿复杂的童鞋们设计的,轻 快 直接 是本版的特色。 随着这几年我们国家网民爆炸式的增长,网络信息也随之越来越庞大,...

    电子-一种物流电子商务平台的垂直搜索方法

    行业分类-电子-一种物流电子商务平台的垂直搜索方法

Global site tag (gtag.js) - Google Analytics