原创

判断请求是否为搜索引擎蜘蛛或爬虫


最近博客升级为https,图床也告别了免费额度,于是开始监控一下爬虫ip;这里整理一下怎么辨别搜索ip是否为搜索引擎,主要是使用DNS反查方式来获取指定ip的域名,以确定其是否属于搜索引擎:

windows使用nslookup ip命令,inux使用host ip命令,mac使用dig ip命令,

windows示例:

打开命令黑窗口,输入 nslookup xxx.xxx.xxx.xxx(IP地 址),获取域名;搜索引擎的域名一般都和官网域名相关,例如百度的蜘蛛通常是baidu.com或者baidu.jp的子域名,google爬虫通常是googlebot.com的子域名:

cmd

常见搜索引擎蜘蛛及官方说明

Baiduspider
http://www.baidu.com/search/spider.htm

Googlebot
http://www.google.com/bot.html

bingbot
http://www.bing.com/webmaster/help/which-crawlers-does-bing-use-8c184ec0

Yahoo!
http://help.yahoo.com/help/us/ysearch/slurp

360Spider
http://www.so.com/help/help_3_2.html

YoudaoBot
http://www.youdao.com/help/webmaster/spider/

sogou spider
http://www.sogou.com/docs/help/webmasters.htm#07

EasouSpider
http://www.easou.com/search/spider.html

Applebot
http://www.apple.com/go/applebot

FacebookBot
https://developers.facebook.com/docs/sharing/webmasters/crawler

顺便提一下通过UserAgent来判断爬虫是否为搜索引擎是不靠谱的,UserAgent的本质是Http请求头中的一个选项设置,通过编程的方式可以给请求设置任意的UserAgent。

正文到此结束