搜索引擎如何抓取网页(搜索引擎建立网页索引,处理的对象是文本文件(图))

优采云 发布时间: 2021-10-24 05:05

  搜索引擎如何抓取网页(搜索引擎建立网页索引,处理的对象是文本文件(图))

  搜索引擎建立一个网页索引,处理的对象是一个文本文件。对于搜索引擎爬虫来说,爬取的网页包括各种格式,如html、图片、doc、pdf、多媒体、动态网页等格式。捕获这些文件后,需要提取这些文件中的文本信息。准确提取这些文档的信息,一方面对搜索引擎的搜索准确率有重要影响,另一方面对搜索引擎爬虫对其他链接的正确跟踪也有一定的影响。

  对于专业厂商提供的软件生成的文档,如doc、pdf等,厂商会提供相应的文本提取接口。搜索引擎爬虫只需要调用这些插件的接口就可以轻松提取文档中的文本信息以及与文件相关的其他信息。

  HTML 等文档是不一样的。HTML 有自己的一套语法,它使用不同的命令标识符来表示不同的字体、颜色、位置和其他布局。在提取文本信息时需要过滤掉这些标识符。过滤标识符并不难,因为这些标识符有一定的规则,只要根据不同的标识符得到相应的信息即可。但是在识别这个信息的时候,需要记录很多布局信息,比如文字的字体大小,是否是标题,是否以粗体显示,是否是页面关键词,等。这些信息有助于计算单词页面的重要性。同时,对于 HTML 网页,除了标题和正文,会有很多广告链接和公共频道链接。这些链接与文本正文无关。在提取网页内容的时候,这些无用的链接也需要过滤掉。例如,某网站有一个“产品介绍”频道,因为网站的每个网页上都有导航栏。如果导航栏链接不过滤,在搜索“产品介绍”时,那么都会被搜索,这无疑会带来很多垃圾邮件。过滤这些无效链接需要统计大量的网页结构规则,提取一些共性,统一过滤;对于一些重要和特殊的结果,它们也需要单独处理。

  对于多媒体、图片等文件,一般通过链接的锚文本(即链接文本)和相关文件注释来判断这些文件的内容。例如,如果有一个文本为“故宫图”的链接,并且它的链接指向一张bmp格式的图片,搜索引擎爬虫就会知道这张图片的内容是“故宫图”。这样,搜索引擎在搜索“故宫”和“照片”时就可以找到这张图片。另外,很多多媒体文件都有文件属性,考虑这些属性也可以更好的了解文件的内容。

  动态网页一直是网络蜘蛛面临的一个问题。所谓动态网页是相对于静态网页而言的,静态网页是程序自动生成的页面。这样做的好处是可以快速统一地改变网页的样式,减少网页在服务器上的占用空间,但也会被网络蜘蛛爬取。带来一些麻烦。由于开发语言越来越多,动态网页的种类也越来越多,比如asp、jsp、php等。这些类型的网页对于搜索引擎爬虫来说可能稍微容易一些。搜索引擎爬虫对某些脚本语言(如VBScript、JaVaScript)生成的网页的处理难度较大。为了处理好这些网页,网络蜘蛛需要有自己的脚本解释器。对于网站数据库中存储的很多数据,需要搜索这个网站的数据库来获取信息,这给网络蜘蛛的爬取带来了很大的困难。对于这种网站,网站的设计者如果想让这些数据被搜索引擎搜索到,就需要提供一种遍历整个数据库内容的方法。

  网页内容的提取一直是搜索引擎爬虫中的一项重要技术。整个系统一般采用插件的形式。通过插件管理服务程序,不同格式的网页由不同的插件处理。这种方法的优点是具有良好的可扩展性。以后每次发现新的类型时,可以将处理方法做成插件,补充插件管理服务程序。

  由于网站的内容在不断变化,搜索引擎爬虫也需要不断更新自己抓取的网页内容。这就需要搜索引擎爬虫在一定周期内扫描网站,看看哪些页面是需要更新的页面,哪些页面是新页面,哪些页面是已经过期的死链接。

  搜索引擎的更新周期对搜索引擎的搜索召回率影响很大。如果更新周期太长,总会有部分新生成的网页无法搜索到;周期太短,技术实施难度大,浪费带宽和服务器资源。并非所有搜索引擎爬虫都使用相同的周期进行更新。对于一些重要的网站更新,更新周期较短,比如一些新闻网站,几个每小时更新一次;相反,对于一些不重要的网站,更新周期较长,可能一两个月才更新一次。

  一般来说,搜索引擎爬虫更新网站的内容时,不需要再次爬取网站网页。对于大多数网页,只需要判断网页的属性(主要是日期)就可以获取 的属性与上次获取的属性进行比较,如果相同,则无需更新。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线