Web Spider
在查看WP后台的时候,总是能看到机器人访问。好奇机器人是什么,就在网上搜了一下,看到这篇关于搜索引擎机器人的文章,写得很详尽。那段广度优先、深度优先的解释,一下就把我拉回到大学时学习数据结构的课堂——那真是段伤脑筋的日子。
搜索引擎机器人也称网络蜘蛛(Web Spider),这是一个很形象的名字。把互联网比喻成一个蜘蛛网,那么Spider 就是在网上爬来爬去的蜘蛛。网络蜘蛛通过网页的链接地址来寻找网页,从网站某一个页面(通常是首页)开始,读取网页的内容,找到在网页中的其它链接地址,然后通过这些链接地址寻找下一个网页,这样一直循环下去,直到把这个网站所有的网页都抓取完为止。如果把整个互联网当成一个网站,那么网络蜘蛛就可以用这个原理把互联网上所有的网页都抓取下来。
在抓取网页的时候,网络蜘蛛一般有两种策略:广度优先和深度优先(如下图)。
广度优先与深度优先
广度优先 是指网络蜘蛛会先抓取起始网页中链接的所有网页,然后再选择其中的一个链接网页,继续抓取在此网页中链接的所有网页。这是最常用的方式,因为这个方法可以让网络蜘蛛并行处理,提高其抓取速度。
深度优先 是指网络蜘蛛会从起始页开始,一个链接一个链接跟踪下去,处理完这条线路之后再转入下一个起始页,继续跟踪链接。这个方法有个优点是网络蜘蛛在设计的时候比较容易。由于不可能抓取所有的网页,有些网络蜘蛛对一些不太重要的网站,设置了访问的层数。
例如上图A 为起始网页,属于0 层,B、C、D、E、F 属于第1 层,G、H 属于第2 层,I属于第3 层。如果网络蜘蛛设置的访问层数为2 的话,网页I 是不会被访问到的。这也让有些网站上一部分网页能够在搜索引擎上搜索到,另外一部分不能被搜索到。对于网站设计者来说,扁平化的网站结构设计有助于搜索引擎抓取其更多的网页。
网络蜘蛛在访问网站网页的时候,经常会遇到加密数据和网页权限的问题,有些网页是需要会员权限才能访问。当然,网站的所有者可以通过协议让网络蜘蛛不去抓取,但对于一些出售报告的网站,他们希望搜索引擎能搜索到他们的报告,但又不能完全免费的让搜索者查看,这样就需要给网络蜘蛛提供相应的用户名和密码。网络蜘蛛可以通过所给的权限对这些网页进行网页抓取,从而提供搜索。而当搜索者点击查看该网页的时候,同样需要搜索者提供相应的权限验证。如何辨别搜索引擎机器人身份
搜索引擎派出他们的搜索机器人去访问、索引网站内容,网站管理员也默认、欢迎它们来访。但是由于搜索引擎派机器人来访会在一定程度上影响网站性能,因此并非所有的机器人都是无害的,有一些非法机器人伪装成主流搜索引擎漫游器对网站大量遍历,并且不遵循robots.txt 规范,会严重拖垮网站性能而又无其它益处。因此,网站管理员需要验证每个机器人身份是否合法。
在你的服务器日志文件中,可见每次访问的路径和相应的IP 地址,如果是机器人来访,则user-agent 会显示Googlebot 或MSNBot 等搜索引擎漫游器名称,每个搜索引擎都有自己的user-agent,但仅有这个还不足以证明这个机器人的合法性,因为很多垃圾制造者可能将他们的机器人也命名为Googlebot,以伪装蒙混进入网站,大肆采掘内容。目前,主流搜索引擎都建议网站管理员通过这种方式来辨别真实的机器人身份:通过DNS 反向查询找出搜索引擎机器人IP 地址对应的主机名称;用主机名查找IP 地址以确认该主机名与IP 地址匹配。
首先,使用DNS 反向查询(Reverse DNS Lookup),找出机器人IP 地址对应的主机名称。主流搜索引擎的主机名称通常情况下应是这样的:Google : 主机名称应包含于googlebot.com 域名中, 如:crawl-66-249-66-1.googlebot.com; MSN : 主机名称应包含于search.live.com 域名中, 如:livebot-207-46-98-149.search.live.com; Yahoo:主机名称应包含于inktomisearch.com 域名中,如:ab1164.inktomisearch.com。 最后,做一次DNS 查询,用主机名查找IP 地址(Forward DNS Lookup),以确认该主机名与IP 地址匹配。由此证明该机器人是合法的。
现在,如果发现一个机器人将自己伪装成合法搜索引擎漫游器,你就可以通过服务器上的设置来阻止这个非法机器人。
Post comment
Sponsored by
Recent Posts
- 52 Excellent Single Page Sites Inspiring For Designers
- Very Simple & Tiny Lightboxing: Lightbox_me
- 10+ Free HTML5-CSS3 Website Templates
- Bizarre Websites On Which You Can Kill Time With Style
- 40 Beautiful E-Commerce Websites 2010
- gMap – google maps plugin for jquery
- Contextual Slideout Tips With jQuery & CSS3
- TipTip jQuery Plugin
- Showcase Of Beautiful Vertical Navigation Designs
- 45+ Fresh Wordpress Tutorials, Techniques and Hacks
Tag Cloud
Archives
- June 2010 (4)
- May 2010 (1)
- April 2010 (8)
- March 2010 (24)
- February 2010 (10)
- January 2010 (16)
- December 2009 (25)

admin





