搜索引擎的基础是拥有大量网页的信息数据库,它是决定搜索引擎整体质量的重要指标。如果搜索引擎的Web信息量较小,那么供用户选择的搜索结果较少;而大量的Web信息可以更好地满足用户的搜索需求。
为了获取大量的Web信息数据库,搜索引擎必须收集网络资源,本文的工作就是通过搜索引擎的Web爬虫,对Internet上的每个Web页面进行信息的抓取和抓取。这是一个爬行和收集信息的程序,通常被称为蜘蛛或机器人。
尽管搜索引擎蜘蛛有不同的名称,但它们的爬行和爬行规则基本相同:
(1)当搜索引擎抓取网页时,会同时运行多个蜘蛛程序,根据搜索引擎地址库中的网址浏览抓取网站。地址库中的网址包括用户提交的网址、大型导航台的网址、手工采集的网址、蜘蛛抓取的新网址等。
(2)搜索引擎蜘蛛在进入允许抓取的网站时,一般会采取深度优先、宽度优先、高度优先三种策略进行爬行和遍历,以抓取更多的网站内容。
深度优先爬行策略是搜索引擎蜘蛛在网页中找到一个链接,向下爬行到下一个网页的链接,向下爬行到该网页中的另一个链接,直到没有未爬行的链接,然后返回到个网页,向下爬行到另一个链。
在上面的例子中,搜索引擎蜘蛛到达网站主页,找到优等网页A、B、C的链接并将其爬行出来,然后依次爬行下优等网页A1、A2、A3、B1、B2和B3,在爬行第二级网页后,爬行第三级网页A4、A5,A6,尽量爬行所有网页。
较好优先级爬行策略是根据一定的算法划分网页的重要程度,主要通过网页排名、网站规模、响应速度等来判断网页的重要程度,搜索引擎爬行并获取较高的优先级。只有当PageRank达到一定级别时,才能对其进行爬网和抓取。当实际的蜘蛛抓取网页时,它会将网页的所有链接收集到地址数据库中,并对其进行分析,然后选择PR较高的链接进行抓取。网站规模大,通常大型网站可以从搜索引擎中获得更多的信任,而且大型网站更新频率快,蜘蛛会先爬行。网站的响应速度也是影响蜘蛛爬行的一个重要因素。在较好优先级爬行策略中,网站响应速度快,可以提高爬行器的工作效率,因此爬行器也会优先对响应速度快的网站进行爬行。
这几种爬行策略各有利弊。例如,深度优先一般选择合适的深度,以避免落入大量的数据中,从而限制了页面的捕获量;宽度优先随着捕获页面的增加,搜索引擎需要排除大量无关的页面链接,爬行效率会变低;较好优先级忽略了许多小网站的页面,影响了互联网信息差异化展示的发展,几乎进入大网站的流量,小网站难以发展。
在搜索引擎蜘蛛的实际爬行中,这三种爬行策略通常同时使用。经过一段时间的爬行,搜索引擎蜘蛛可以爬行互联网上的所有网页。然而,由于Internet的巨大资源和搜索引擎的有限资源,通常只对Internet上的一部分网页进行抓取。
蜘蛛抓取网页后,对网页的值是否达到抓取标准进行测试。当搜索引擎爬行到网页时,它会判断网页中的信息是否是垃圾信息,如大量重复的文本内容、乱码、与包含的内容高度重复等,这些垃圾蜘蛛不会抓取,它们只是爬行。
搜索引擎判断网页的价值后,将包含有价值的网页。该采集过程是将采集到的网页信息存储到信息数据库中,根据一定的特征对网页信息进行分类,并以URL为单位进行存储。
搜索引擎的爬行和爬行是提供搜索服务的基本条件。随着Web数据的大量出现,搜索引擎能够更好地满足用户的查询需求。