程田
虽然已经上映有一段时日了,《美国队长3》仍然是大家热搜的焦点。当你在百度搜索里输入“美国队长3”时,会发现百度为你找到了约有272000个相关结果。而当你想要搜索最新加入的蜘蛛侠,只要输入“美国队长3 蜘蛛侠”,百度就会为你找到约3470000个相关结果。在浩如星海的网络信息中,究竟是什么技术帮助我们抓住了真正需要的信息呢?
网络搜索靠“神马”
还记得影片中蜘蛛侠为了能够迎战强大的美国队长,而接受了钢铁侠提供的最新技术装备吗?搜索引擎,就是人们在网络时代抓取信息时的必备技术装备。这套装备也是在相应的条件下不断进步的。据统计,截至2015年,中国网页数量已经突破了2000亿,人们通过互联网一个一个查找信息的手段已经OUT。说得再深入一些,你会发现身边人们的消费方式也发生了巨大的改变。那些知名的企业为了推广品牌,纷纷加入了网络推广的大军,就像知名的漫威公司,在营销自己的电影时也有一套网络推广方案。而搜索引擎,正是网络推广中最廉价、最高效的方式。因此,由于时代的召唤和大众的需求,搜索引擎自然成为了网络搜索中人们的首选。
其实用一句话来说,搜索引擎就是以一定的策略在互联网中搜集发现信息,同时对信息进行理解、提取、组织和处理,并为用户提供检索服务的一种方式。
搜索引擎主要有两种基本的类型:一类是利用全文检索的技术型搜索引擎,像大家熟悉的百度、谷歌等。这一类搜索引擎利用数据挖掘提取技术收集网络信息,并根据相应的算法建立数据库索引供用户查询。这种类型的搜索引擎是最常用的。
而另一类则被称为分类目录,这种搜索引擎是通过人工编辑网络信息,利用关键字和描述信息进行信息检索,并将符合条件的结果人工录入数据库,能够形成有针对性的逐级查询。不过也有一个缺点,就是对网站要求特别高,有时即使登录多次,也不一定会成功。而大家最熟悉的例子大概就是巨难登录的超级引擎YAHOO了。
搜索引擎的基本构造
就像蜘蛛侠的装备覆盖了头、身、手、脚,搜索引擎也从四个基本的部分武装和完善了信息抓取的技术,它们就是:Spider、索引模块、信息检索和用户接口。
Spider
也就是网络爬虫,它是搜索引擎数据收集的关键技术,也是网络抓取技术的重要手段(对于最关键的这点,我们还会在下面说得更详细)。
索引模块
利用索引分析器对Spider获得的信息进行分析和处理,过滤掉无效以及冗余的信息,并把信息表示成一种便于建立索引的方式,建立索引数据库,便于用户查询信息。
信息检索
根据用户查询的关键词从索引数据库中快速查找相应的文档,并进行相关度的计算,然后将结果根据相关度排序反馈给用户。
用户接口
用户接口作为用户与搜索引擎交互的窗口,将接受的关键字或相关的重要信息输入到系统之中,并反馈用户的查询结果。
Spider—信息抓取关键者
如果说,蜘蛛侠装备的核心技术是能够喷射大网,并能逮捕敌人的蛛丝发射器。那么Spider也可以说是搜索引擎中最关键的一环了。
和蛛丝发射器的用法差不多,搜索引擎利用Spider寻找网络内容的基本工作流程,也就是说将网络上的HTML文档使用超链接链接起来,织成一张大网,然后Spider就像蜘蛛一样沿着这张网把相应的网页信息抓取下来,并抽取相应的超链接作为下一步爬行的线索(请自行脑补蜘蛛侠不停发射蛛丝并前进的画面)。当搜索完成后,建立相应的索引数据库。最后,利用算法对搜索结果进行处理和排序。当然了,由于网络更新速度快,需要定期地多次爬取以更新相应的网络信息,避免死链接和无效链接。
就像超级英雄们在行动之前都会制定相应的行动方针,Spider在网络中的移动也需要遵循一定的方法和策略。通常的网页分析方法包括基于网络拓扑结构、网页内容以及用户的访问行为等分析方法。基于网络拓扑结构的方法主要利用网络结构的特性,即相应网络节点中的出入度,权值或节点粒度,进行相应的优先度(重要性)分析。基于网页内容的分析方法主要利用了文本检索的技术,对网页进行快速有效的分类和聚类。基于用户访问行为的分析主要根据用户行为的上下文信息对网络路径进行预测。
而说到搜索策略,Spider主要有两种搜索方法:广度优先遍历法和深度优先遍历法。这就相当于超级英雄们的作战策略了。
广度优先用于网络搜索法则,是指Spider会先抓取起始网页中链接的所有网页,然后再选择其中的一个链接网页,继续抓取在此网页中链接的所有网页。比如在浏览网页时,先打开你要浏览的全部内容,像体育板块,新闻板块、论坛板块、财经板块等等,在选择其中一个板块后以之前相同的方式向下浏览,例如你选择了体育版块,再打开篮球版块,然后再接着打开篮球中的科比新闻,以这样方式循环向下浏览。
深度优先用于网络搜索法则是指网络爬虫会从起始页开始,一个一个链接跟踪下去,处理完这条线路之后再转入下一个起始页继续跟踪链接。换句话说,就是指把一种内容看完后再更换其他内容,比如浏览网页时,先看体育版块,在浏览体育版块中的篮球区,篮球区看完后去看足球区,等所有在体育板块中我想看完的内容都看完后,我再选择其他版块进行观看。
虽然从目前的基本工作流程来看,Spider能够很轻易地实现搜索,但随着互联网技术的不断发展,网络抓取技术还会面临新的挑战。网页数量爆发式的增长,意味着在一定时间之内,只能抓取其中的一部分。为了更好地抓取信息,Spider不仅需要能够完成基本的工作流程,还需要研发者们提供更好的爬取策略。当信息抓取技术进一步提升时,就能帮你把想要的信息一网打尽了。