网络搜索方法和设备的制作方法

文档序号:6467706阅读:138来源:国知局
专利名称:网络搜索方法和设备的制作方法
技术领域
本发明涉及搜索引擎技术,尤其涉及使用爬虫的网络搜索方法和设备。
背景技术
随着计算机和互联网技术的发展,搜索引擎已经成为Web客户机(例如计算机) 使用者获取信息的重要方式。如图5所示,传统的搜索引擎540包括索引服务器541、索引 数据库542和检索器543。搜索引擎还使用搜索器520 (WEB爬虫或称为蜘蛛、机器人程序) 定期地访问通过URL定位的资源内容站点510,提取出其中的文本信息和其它相关网页属 性,并储存该信息以使得索引服务器541可以处理检索到的数据。所述索引服务器解析这 些文档并通过应用索引算法创建文档索引,将其存储在索引数据库542中,以供用户通过 检索器543进行检索。 随着互联网技术的发展,已经出现了尤其是论坛(BBS),博客(BLOG),社区(SNS), 新闻(NEWS)等主题页面。针对这些主题页面的信息,目前一般都是采用传统的爬虫进行页 面的抓取。 传统的WEB爬虫采用深度优先或者广度优先遍历网页进行抓取。广度优先指爬虫 会先抓取起始网页中链接的所有网页,然后再选择其中的一个链接网页继续抓取在此网页 中链接的所有网页。深度优先是指爬虫会从起始页开始逐个链接地爬行搜索。
实际上,由于网上的页面量极其庞大,并且并不是所有的信息都是那么重要的, 因此有些爬虫对不太重要的网站设置了访问的层数,从而使得只抓取部分的网页(参见 US6269370)。这样例如要抓取尽可能多的论坛页面时却不能很好的达到目的。而且,无论 是通过深度优先还是通过广度优先的方法去获取网页的URL,都会有大量的没有用的URL 需要去判断和检验。

发明内容
本发明提供一种搜索方法和设备互联网主题页面的URL的获取方法,用以解决现
有技术在处理例如论坛这样的网站时出现的低效率或采集不全面的问题。 根据本发明的一个方面,一种网络搜索方法包括以下步骤 获得用于预定网站资源的统一资源定位符URL的变化规则,所述变化规则定义了 所述预定网站资源的URL逻辑结构中的固定参数和可变参数、以及可变参数的变化规律;
使用所述用于预定网站资源URL的变化规则获取URL ;以及
通过请求所述获取的URL进行搜索。 优选地,根据通过搜索所获得的响应信息验证所述获取的URL是否有效。如果所 述获取的URL经验证有效则保存所述URL的历史记录,所述获取URL的步骤包括基于上 次保存的URL历史记录,按照所述用于预定网站资源URL的变化规则获取下一个新的URL。 或者可以仅在所述获取的URL未被成功验证的情况下,保存该未被成功验证的URL或者上 次刚经过验证有效的URL,在这种情况下所述获取URL的步骤包括从上次保存的未被成功
4验证的URL开始,按照所述用于预定网站资源URL的变化规则获取准备用于搜索和验证的 URL ;或者基于上次保存的刚经过验证有效的URL,按照所述用于预定网站资源URL的变化 规则获取下一个新的URL。 以上的所述可变参数按照数字等差数列、等比数列、字母序列、日期字符串序列或 枚举类型序列中的一种变化。在URL的逻辑结构中可变参数可是也1个,也可以是多个;在 多个可变参数的情况下,可变参数的变化规律包括每个可变参数的变化规律以及各个可变 参数之间有关优先变化顺序的变化优先级关系。 在多个可变参数的情况下,所述获取URL的步骤包括在按照变化优先级从高到 低的顺序每次改变一个较高优先级的可变参数进行循环的情况下通过仅允许最低变化优 先级的可变参数变化来获取所述URL,其中同时变化的可变参数属于同一个变化优先级。
进一步,在通过请求所述获取的URL进行搜索的步骤后对所述获取的URL进行验 证,如果所述获取的URL经验证有效则保存所述URL的历史记录, 在针对所述一个较高优先级的循环中获取URL的步骤包括根据上次保存的URL 历史记录判断新获取的URL是否已被验证过,如果新获取的URL已被成功验证过则通过仅 允许所述最低变化优先级的可变参数变化来获取下一个新的URL ;如果新获取的URL未被 成功验证则从新获取的URL开始进行搜索和验证,以通过仅允许所述最低变化优先级的可 变参数变化来获取下一个新的URL。 可替代地,在通过请求所述获取的URL进行搜索后对所述获取的URL进行验证,如 果所述获取的URL未被成功验证,则保存经过验证有效的URL或将该未被成功验证的URL 保存在下一步搜索的URL队列中。 根据本发明的另一个方面,一种网络搜索设备包括 获得装置,被配置成获得用于预定网站资源的统一资源定位符URL的变化规则, 所述变化规则定义了所述预定网站资源的URL逻辑结构中的固定参数和可变参数、以及可 变参数的变化规律; URL生成装置,被配置成使用所述用于预定网站资源URL的变化规则获取URL ;以 及 搜索装置,被配置成通过请求所述获取的URL进行搜索。 优选地,所述网络搜索设备还包括验证装置,被配置成根据通过搜索所获得的响 应信息验证所述获取的URL是否有效;以及存储器,被配置成保存URL的验证结果,
所述URL生成装置进一步被配置成基于上次保存的URL验证结果按照所述用于预 定网站资源URL的变化规则获取待搜索的URL。
本发明的有益效果如下 (1)本发明通过利用网页URL的编写规律,来自动生成当前所爬取的网页URL所对 应的下一个URL地址,从而可以通过循环控制,不断地抓取网站的更多页面,包括那些在不 断增加或者更新的页面。由于是按照该网站的URL规律进行生成,因此其可靠性高于从该 网站的某个网页中分析所链接的各个URL来逐个尝试的结果; (2)本发明不受广度优先遍历或者深度优先遍历的层数限制,因此能够更全面的 覆盖整个网站,得到更多的即时信息; (3)凡是存在类似的URL规律的网站,都可以通过本发明来改变其相应模板的各个部分,从而进行页面的爬取。


结合附图,通过参考下列详细的示例性实施例的描述,将会更好地理解本发明本
身、优选的实施方式以及本发明的目标和优点。
图1示出本发明可被实现的分布式数据处理系统。
图2示出了根据本发明的网络搜索方法的流程图。 图3示出了针对包括两个可变参数的URL的网络搜索方法流程图。 图4示出了根据本发明的网络搜索设备的框图。 图5示出了常规的搜索引擎的框图。
具体实施方式

系统体系 现在参考附图,特别是图l,描述了可实现本发明的分布式数据处理系统的框图。 分布式数据处理系统100是可实现本发明的计算机网络。分布式数据处理系统100包含网 络102,网络102是用于在不同的设备和分布式数据处理系统100内连接到一起的计算机之 间提供通信链接的媒介。 在所描述的例子中,服务器104与存储器106—起连接到网络102。此外,例如工 作站、个人计算机、手机、PDA等的客户端108、 110和112也被连接到网络102。在所描述的 例子中,服务器104向客户端108、110和112提供如引导文件的数据、操作系统以及应用程 序。分布式数据处理系统100可包括另外的服务器、客户端以及其它未显示的设备。在所 描述的例子中,分布式数据处理系统100是因特网,网络102表示对使用TCP/IP协议套件 来彼此通信的网络以及网关的集合。当然,分布式数据处理系统100还可被实现为不同类 型的网络。 企图将图1作为例子,而不是作为本发明所述过程的结构限制。在不偏离本发明 精神和范围的条件下,可对图l所示系统作出许多更改。 本发明可实现为如图1所示的服务器104的数据处理系统。该数据处理系统可以 是包括连接到系统总线的多个处理器的对称对处理器(SMP)系统。亦可使用单处理器系 统。本发明还可实现为图1中客户端计算机的数据处理系统。
优选实施例 图2示出了根据本发明的网络搜索方法的流程图。本领域普通技术人员熟知网络 爬虫通过采集URL实现搜索,URL的结构通常由协议名称〃主机名称[:端口地址/存放 目录/文件名称]所组成,本发明主要针对URL逻辑结构有规律地变化的预定网站资源,如 BBS网页。
本发明的网络搜索方法包括以下步骤 获得用于预定网站资源的统一资源定位符URL的变化规则(步骤S201),所述变化 规则由设计人员事先经过观察研究预定网站的主题资源的URL变化来发现其URL逻辑结构 中的固定参数和可变参数、以及可变参数的变化规律并由此设计获得的;
使用所述用于预定网站资源URL的变化规则获取URL (步骤S202);
通过请求所述获取的URL进行搜索(步骤S203); 获取URL的步骤(步骤S202)可以是在搜索前获取包括可能变化的全部URL的URL 列表,逐个进行采集;也可以在尝试搜索完一个URL后再按照变化规则产生下一个新URL进 行搜索。 优选地,为避免重复搜索可以对URL进行验证并保存URL的验证结果。例如可根 据通过搜索所获得的响应信息(如响应信息的大小等)验证所述获取的URL是否有效(步 骤S204);保存URL的验证结果,在此可选地是如果所述获取的URL经验证有效则保存所述 URL的历史记录(步骤S205),则再基于上次保存的URL历史记录,按照所述用于预定网站 资源URL的变化规则获取的下一个新的URL(步骤S202),不断循环地进行搜索。
作为步骤S205的替代,可仅在所述获取的URL未被成功验证的情况下,将该未被 成功验证的URL保存在URL队列中或者仅保存上次刚经过验证有效的URL。在按照搜索器 的预定义空闲机制触发本发明方法的下次循环的情况下,则可从上次保存的未被成功验证 的URL开始,按照所述用于预定网站资源URL的变化规则获取准备用于搜索和验证的URL ; 或者基于上次保存的刚经过验证有效的URL,按照所述用于预定网站资源URL的变化规则 获取下一个新的URL。 所述可变参数可以是按照数字等差数列、等比数列、字母序列、日期字符串序列或 枚举类型序列等等各种序列变化的。在可变参数为多个的情况下,所述可变参数的变化规 律不仅应包括每个可变参数的变化规律,而且还包括各个可变参数之间有关优先变化顺序 的变化优先级关系。 以下以URL逻辑结构包括两个可变参数为例进行详细说明。 不失一般性,假设要抓取的网站为BBS,且在网站的URL中,对应包含有对应的主 题文章的主题号码(第一变化优先级TopicID),以及该文章在网页上显示时的页码(第二 变化优先级PageID),例如:http:〃www. xxx. com/12345_l. htm。其中12345表示TopicID, l表示PageID,即该URL对应的是来自网站www. xxx. com的编号为12345的主题的第1页信 息。此处,假设TopicID和PageID均以等差数列变化,而且TopicID的变化优先级比PageID 要高,即当改变TopicID的时候,默认PageID为第一页,如果对应的URL没有实际的网页存 在,那么就肯定不会有第二页对应的网页存在了。 图3示出了针对包括两个可变参数的URL的网络搜索方法流程图
(步骤S301)从数据库中获得定义了上述网站URL逻辑结构中的固定参数和可 变参数、以及可变参数的变化规律的变化规则,例如网站资源URL结构(htW/W xxx. com/TopicID PageID. htm)以及两个可变参数(TopicID、 PageID)从何值开始如何变化。
在步骤S302生成主ID序列(在此为第一变化优先级TopicID),按照TopicID的 变化规律,生成本次将要进行抓取的URL中相应的TopicID的值;同时或随后在步骤S303 生成次ID序列(在此为第二变化优先级PageID),按照PageID的变化规律,生成本次将要 进行抓取的URL中相应的Page ID的值,如果是新生成了一个TopicID,将用从数据库获取的 PageID初始值对其赋值(即第一页的序号),如果存储器中保存了上次循环已通过使用第 一页的序号生成的URL抓取到了有效的页面,那么将按照PageID的变化规律,生成后续值 (即第二、第三等后续页面的序号),由此得到一个URL(步骤S304)。显然步骤S302-S304 构成了使用URL变化规则获取URL的步骤。[OO53](步骤S305)通过http协议(或者ftp协议)等从互联网上请求所获取URL对应 的页面,并把页面下载下来。如果没有实际页面的话,可能会收到相应的一些错误信息。
(步骤S306)验证页面是否有效。如果该URL经验证是有效的,即有实际的网页 存在,则通过保持TopicID不变同时修改PageID,得到新的待搜索的URL进行搜索;如果该 URL未被成功验证,则可以在改变TopicID的值(例如按其变化规律从12345变为12346)的 情况下仅允许PageID变化生成新的URL,并对其进行尝试爬取(即重复步骤S302至306)。 若针对新TopicID (12346)的循环从未有经验证有效的URL,则PageID从其初始默认值(第 一页的序号)开始变化;若针对新TopicID (12346)的循环已有过经验证有效的URL(在此 例如存储器中保存了第2页已经验证有效或者上次第3页未被成功验证的信息),则获取新 URL (http: 〃www. xxx. com/12346_3. htm)进行搜索。 优选地,为避免重复搜索通常是要验证URL并保存验证结果。然而考虑到在搜索 设备(爬虫)搜索后对下载的网页进行解析并建立索引,因此本发明的方法可以省略以上 验证URL并保存验证结果的步骤,而直接从搜索引擎侧获得有关URL验证结果的信息,并利 用该信息判断是否继续进行本次TopicID的循环,或者进行下一个TopicID的循环。
以上在对步骤S306的说明中,如果在上一次TopicID循环中所获取的URL未被 成功验证,则保存刚经过验证有效的URL或将该未被成功验证的URL保存在下一步搜索的 URL队列中。然而也可以每次搜索和验证后都保存经验证有效的URL,这样获取新URL的步 骤就包括根据上次保存的URL历史记录判断新获取的URL是否已被验证过,如果新获取的 URL已被成功验证过则通过仅允许所述最低变化优先级的可变参数(在此即PageID)变化 来获取下一个新的URL ;如果新获取的URL未被成功验证则从新获取的URL开始、通过仅允 许PageID变化来获取下一个新的URL以进行搜索和验证。 以上从改变TopicID开始逐个改变PageID进行URL请求的过程可以重复循环进 行,以完成本发明的网络搜索方法。在本发明中同样可应用空闲机制进行延时处理,以控制 对网站的访问频率,减轻访问压力。例如在对TopicID进行多次变化之后都得不到实际有 效的URL或者直接利用定时延时处理的情况下,在准备改变TopicID之前或者更具体地在 保存URL的验证结果之后应用空闲机制进行延时处理,例如在图3中在步骤S306到S302 之间插入的步骤S307 (判断是否停止本轮尝试)和S308 (进行空闲处理)。
在延时处理之后开始的根据URL获取URL的步骤可以是从最近一次的一个有效 URL所对应的TopicID开始按照相应的变化规律来重新生成序列;优选地通过将未被成功 验证的URL保存在URL队列中来重新开始新一轮的爬取尝试。这样通过利用空闲机制,可 以更有效地不间断地自动爬取网站的页面,以便及时爬取到新生成的页面。
变型实施例 (1)虽然本实例只针对一个网站说明了相应的流程,但是实际上可以针对多个网 站使用本发明生成待搜索URL的方法进行处理,只需增加对多个网站分别爬取的轮换机制 即可。 (2)虽然对于例如BBS这样的网站,大部分URL都只包含TopicID和PageID两个 可变参数,但是还有一些包含有3个甚至更多个可变参数。在使用本发明时,变化的策略是 类似的,只需增加几个不同的优先变化级的循环(同PageID的处理)即可(例如在图3所 示的流程图中中的生成第二变化优先级PagelD的步骤S303处增加生成下一 (第三变化优先级的循环处理))。
例如预定网站资源的URL的逻辑结构由如下等式表示 S(URL) = Sa(l)+Sb(l)+Sa(2)+Sb(2)+. Sa(i)+Sb(i).+Sb(n_l)+Sa(n)+Sb( n) 其中,"+ "表示字符串的连接;字符串Sa(i)表示第i个固定参数,也可以是空字 符串;字符串Sb(i)表示第i个可变参数。 在按照变化优先级从高到低的顺序(假设从Sb(l)至Sb(n-l))每次改变一个 较高优先级的可变参数Sb(i)进行循环的情况下通过仅允许最低变化优先级的可变参数 (Sb(n))变化来获取所述URL。其中各个可变参数的变化可能不一致并且有先后顺序,按照 各个可变参数的变化先后顺序在变化规则中设定可变参数的变化优先级。在此如果有两个 或两个以上的可变参数按照变化规则要同时变化,则该需要同时编号的可变参数属于同一 个变化优先级。 (3)对于常见的变化策略一般是整数值的变化,例如TopicID—般是整数自动加1 的变化,而Page ID是一个等差数列,例如1, 2, 3,. . . , 0, 10, 20,...,等。除此之外,任一可变 参数均可能存在其他的变化,例如用有限个英文单词所组成的序列([life, love, family, finance]),也可以是时间(例如20081001, 20081002, 20081003, )、其它类型的数字等 差数列、等比数列、字母序列、日期字符串序列或枚举类型序列等等。 (4)本发明的策略不只适用于BBS等类型的网站,凡是在URL中存在有规律的可变 参数时,都可以使用,例如诸如其它使用自动增加号码以标记各个页面的网站资源、具有类 似URL格式的图像文件(http:〃site/#Image-ID#. jpg)等等。
网络搜索设备 图4示出了根据本发明的网络搜索设备的框图。
根据本发明的网络搜索设备,包括 获得装置401,被配置成获得用于预定网站资源的统一资源定位符URL的变化规 则; URL生成装置402,被配置成使用所述用于预定网站资源URL的变化规则获取URL; 以及 搜索装置403,被配置成通过请求所述获取的URL进行搜索。 验证装置404,被配置成根据通过搜索所获得的响应信息验证所述获取的URL是 否有效;以及 存储器405,被配置成保存URL的验证结果, 所述URL生成装置402进一步被配置成基于上次保存的URL验证结果按照所述用 于预定网站资源URL的变化规则获取待搜索的URL。 以上描述了本发明的优选实施方式。本领域的普通技术人员知道,本发明的保护 范围不限于这里所公开的具体细节,而可以具有在本发明的精神实质范围内的各种变化和 等效方案。
9
权利要求
一种网络搜索方法,包括以下步骤获得用于预定网站资源的统一资源定位符URL的变化规则,所述变化规则定义了所述预定网站资源的URL逻辑结构中的固定参数和可变参数、以及可变参数的变化规律;使用所述用于预定网站资源URL的变化规则获取URL;以及通过请求所述获取的URL进行搜索。
2. 根据权利要求1所述的网络搜索方法,其中还包括根据通过搜索所获得的响应信 息验证所述获取的URL是否有效。
3. 根据权利要求2所述的网络搜索方法,其中,如果所述获取的URL经验证有效则保存 所述URL的历史记录,所述获取URL的步骤包括基于上次保存的URL历史记录,按照所述用于预定网站资源 URL的变化规则获取下一个新的URL。
4. 根据权利要求2所述的网络搜索方法,其中,仅在所述获取的URL未被成功验证的情 况下,保存该未被成功验证的URL或者刚经过验证有效的上一个URL,所述获取URL的步骤包括从上次保存的未被成功验证的URL开始,按照所述用于预定 网站资源URL的变化规则获取准备用于搜索和验证的URL ;或者基于上次保存的刚经过验 证有效的URL,按照所述用于预定网站资源URL的变化规则获取下一个新的URL。
5. 根据权利要求1所述的网络搜索方法,其中,所述可变参数按照数字等差数列、等比 数列、字母序列、日期字符串序列或枚举类型序列中的一种变化。
6. 根据权利要求1所述的网络搜索方法,其中,所述可变参数包括多个可变参数,所述 可变参数的变化规律包括每个可变参数的变化规律以及各个可变参数之间有关优先变化 顺序的变化优先级关系。
7. 根据权利要求6所述的网络搜索方法,其中,所述获取URL的步骤包括在按照变化 优先级从高到低的顺序每次改变一个较高优先级的可变参数进行循环的情况下通过仅允 许最低变化优先级的可变参数变化来获取所述URL,其中同时变化的可变参数属于同一个 变化优先级。
8. 根据权利要求7所述的网络搜索方法,其中,在通过请求所述获取的URL进行搜索的 步骤后对所述获取的URL进行验证,如果所述获取的URL经验证有效则保存所述URL的历 史记录,在针对所述一个较高优先级的循环中获取URL的步骤包括根据上次保存的URL历史 记录判断新获取的URL是否已被验证过,如果新获取的URL已被成功验证过则通过仅允许 所述最低变化优先级的可变参数变化来获取下一个新的URL ;如果新获取的URL未被成功 验证则从新获取的URL开始进行搜索和验证,以便通过仅允许所述最低变化优先级的可变 参数变化来获取下一个新的URL。
9. 根据权利要求7所述的网络搜索方法,其中,在通过请求所述获取的URL进行搜索 后对所述获取的URL进行验证,如果所述获取的URL未被成功验证,则保存刚经过验证有效 的URL或将该未被成功验证的URL保存在下一步搜索的URL队列中,并通过按照变化优先 级从高到低的顺序改变下一个较高优先级的可变参数进行循环的情况下通过仅允许最低 变化优先级的可变参数变化来获取新的URL。
10. —种网络搜索设备,包括获得装置,被配置成获得用于预定网站资源的统一资源定位符URL的变化规则,所述 变化规则定义了所述预定网站资源的URL逻辑结构中的固定参数和可变参数、以及可变参 数的变化规律;URL生成装置,被配置成使用所述用于预定网站资源URL的变化规则获取URL ;以及 搜索装置,被配置成通过请求所述获取的URL进行搜索。
11.根据权利要求10所述的网络搜索设备,其中还包括验证装置,被配置成根据通过搜索所获得的响应信息验证所述获取的URL是否有效;以及存储器,被配置成保存URL的验证结果,所述URL生成装置进一步被配置成基于上次保存的URL验证结果按照所述用于预定网 站资源URL的变化规则获取待搜索的URL。
全文摘要
本发明公开了一种网络搜索方法和网络搜索设备,网络搜索方法包括以下步骤获得用于预定网站资源的统一资源定位符URL的变化规则,所述变化规则定义了所述预定网站资源的URL逻辑结构中的固定参数和可变参数、以及可变参数的变化规律;使用所述用于预定网站资源URL的变化规则获取URL;以及通过请求所述获取的URL进行搜索。
文档编号G06F17/30GK101739401SQ20081017307
公开日2010年6月16日 申请日期2008年11月26日 优先权日2008年11月26日
发明者于浩, 杨萌, 王主龙 申请人:富士通株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1