十二月
25

不遵守游戏规则的百度、搜狗

或者,标题也可以改为“难以捉摸的百度、搜狗”。

上周,我将首页展示方式改为列表式呈现。为了照顾搜索引擎抓取到首页更多的信息,我在网上找了一种对搜索引擎和普通访客分别展示不同内容的方法。大致就是通过服务器判断请求数据的用户的userAgent中包含的信息,符合各家的爬虫软件信息的就向其提供另一种展示界面。简单来说,我就是通过这种方法向搜索引擎的爬虫软件展示首页“more”截断式首页。

通过一周来的观察,终于等到baidu、google,Yahoo,soso,bing,sogou等更新了首页快照。但是我发现,除了百度和搜狗,其它搜索引擎都按照我的设置正常抓去了首页快照,只有百度和搜狗居然无视一般照样抓取普通访客看到的列表式首页。难道是我设置有误?

我检查了一下,确认没有问题,爬虫名称我也正确书写了。既然不起作用,我只能猜想百度和搜狗的爬虫没有将自身信息包含进Http_User_Agent这个字段里。服务器检测不到它们的信息就只能展示一般的列表式首页了。

但是屏蔽搜索引擎一般做法是在网站根目录放置robots.txt,比如要屏蔽百度,内容为

User-agent: Baiduspider
Disallow: /

User-agent: baiduspider
Disallow: /

至少淘宝是这么做的,http://www.taobao.com/robots.txt。虽然都说百度不遵守robots协议,但是淘宝既然这么做,说明百度也并不是完全不遵守,这样也是有作用的。这里判断爬虫信息也是通过user-agent ,现在还能在百度里搜到淘宝网站的信息,看来百度真的是不理别人对自己的称呼。就如同我们都知道头上带套子那人叫百度,但是那丫偏偏要在套子外面带个帽子伪装自己。写个牌子:带套的人不准进。百度非说,我没带套子,我就要进。进去后却立马将帽子摘下顶着套子胡作非为。于是,所有人都知道,百度来过了。但是也只能心里呐喊:明明门口写了牌子不准带套儿的进呀!!!

所以说,百度爬虫访问网站时是隐藏自身信息的,抓取时却又留下自身信息。所以通过常规方法无法识别百度爬虫。

搜狗看来也一样。

目前我很看好soso,现在天天爬的很勤快,不愧在google手下学了两年的。

鉴于以上情况,我只好对首页文章输出方式进行了更改,将第一篇文章按普通摘要方式输出,其余文章还是列表输出,然后再向第二和第三篇文章动态加载数据。这只是为了照顾一下百度搜狗,其它搜索引擎还是会抓取more截断式首页。

最后提供一下快照链接,有兴趣的可以点击查看快照与本站首页的区别。如果网页过期请自行查看。

带套子的:百度 搜狗

正常抓取:雅虎 谷歌 搜搜 必应

baidu_logo_jr_0912_shd

 

——By QiQiBoY

本文标签: , , , , ,

分享

本文短网址: http://qiqi.boy.im/2w

这篇文章已经有 30 条评论

Comments (30) Trackbacks (0)
You can leave a response or Trackback this entry .
  1. 江流 -#21

    百度是坏蛋,搜狗是变态

  2. 吖Bee -#22

    搜狗跟雅虎…….我几年都没有碰过…

  3. feln -#23

    咱们还是支持谷歌吧

  1. No trackbacks yet.

Leave a Reply

Hi , say something.

  • :?:
  • :razz:
  • :sad:
  • :evil:
  • :!:
  • :smile:
  • :oops:
  • :grin:
  • :eek:
  • :shock:
  • :???:
  • :cool:
  • :lol:
  • :mad:
  • :twisted:
  • :roll:
  • :wink:
  • :idea:
  • :arrow:
  • :neutral:
  • :cry:
  • :mrgreen: