百度蜘蛛Baiduspider真假识别如何呢?
之前百度站长平台接到某站长求助,表示误封禁了Baiduspider的IP,询问是否有办法获得Baiduspider的所有IP,打算放入白名单加以保护,防止再次误封。在此百度官方告诉各位站长,Baiduspider的IP池是不断变动的,我们无法提供IP全集。
除此之外,之前还有站长发来质疑说Baiduspider光顾过于频繁,已超越服务器承受能力。而百度站长平台追查发现,Baiduspider对该站点的抓取并无异常,那只spider极有可能是个李鬼。
那么,站长该如何通过IP来判断此spider是不是来自百度搜索引擎的呢?
可以通过DNS反查方式来解决这个问题。根据平台不同验证方法不同,如linux/windows/os三种平台下的验证方法分别如下:
1、在linux平台下,您可以使用host ip命令反解ip来判断是否来自Baiduspider的抓取。Baiduspider的hostname以 *.baidu.com 或 *.baidu.jp 的格式命名,非 *.baidu.com 或 *.baidu.jp 即为冒充。
2、在windows平台或者IBM OS/2平台下,您可以使用nslookup ip命令反解ip来 判断是否来自Baiduspider的抓取。打开命令处理器 输入nslookup xxx.xxx.xxx.xxx(IP地 址)就能解析ip, 来判断是否来自Baiduspider的抓取,Baiduspider的hostname以*.baidu.com 或*.baidu.jp 的格式命名,非 *.baidu.com 或 *.baidu.jp 即为冒充。
3、在mac os平台下,您可以使用dig 命令反解析 ip来 判断是否来自Baiduspider的抓取。打开命令处理器 输入dig xxx.xxx.xxx.xxx(IP地 址)就能解析ip, 来判断是否来自Baiduspider的抓取,Baiduspider的hostname以 *.baidu.com 或*.baidu.jp 的格式命名,非 *.baidu.com 或 *.baidu.jp 即为冒充。
百度蜘蛛真假识别方法:
实际上,我们的日志中,有很多的baiduspider是他人伪装的,要想解决这个问题。我们必须在验证baiduspider真伪上下功夫,这篇文章详细的介绍了爬虫的鉴别方法。
我们在根据网站日志分析搜索引擎蜘蛛抓取网页的记录时,实际上很多站点都是有一些伪装成baiduspider的到访者的。这些数据会严重影响我们对日志分析后的判断。
这些到访者,为什么会伪装为baiduspider来访问我们的网站呢?最典型的就是采集你网站内容的那些人。他们知道很多工具是能够看到哪些ip访问网站的量过大的。例如某一个ip今天访问你网站1万次,那正常吗?肯定是不正常的。但他要是baiduspdier呢?呵呵,那就正常了。
我们应该如何识别baiduspider的真假呢?
百度pc端的爬虫UA是这样的:
Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)
Mozilla/5.0 (compatible; Baiduspider-render/2.0; +http://www.baidu.com/search/spider.html)
百度移动端的爬虫UA是这样的:
Mozilla/5.0 (Linux;u;Android 4.2.2;zh-cn AppleWebKit/534.46 (KHTML,like Gecko) Version/5.1 Mobile Safari/10600.6.3 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)
Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS x) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B143 Safari/601.1 (compatible; Baiduspider-render/2.0; +http://www.baidu.com/search/spider.html)
如上是包含了百度的常规爬虫,和渲染爬虫render的。这两个爬虫的区别符已经用红色字体标出来了。
区分百度pc和移动端的爬虫
通过关键词“Android”或者“Mobile”来进行识别,判断为移动访问或者抓取。
通过关键词“Baiduspider/2.0”、“Baiduspider-render/2.0”,判断为百度爬虫。
然而,你以为这样就能很好的识别了吗?采集者要是伪装成和上面一样的UA信息怎么办呢?
这个时候我们就要用到ip地址了,每一次访问在日志中都记录了访客的ip地址,我们可以判断ip是不是真的baiduspider,方法如下:
windows电脑反查ip,判断爬虫真伪:
点击“开始”菜单,-> 点击“运行”按钮,-> 然后弹出cmd窗口。输入“nslookup 要查询的ip地址”,点击回车键,会有结果输出出来。判断是否来自Baiduspider的抓取。回车后的结果如果包含x x.baidu.com 或x x.baidu.jp 这两种格式,就说明是真的baiduspider。下面是示例:
如上图中,我执行命令,返回的结果中,最后绿色框中的内容就包含的xx.baidu.com,所以是真的爬虫,如果不是这样的就不是真的baiduspider。
liunx系统反查ip,判断爬虫真伪:
liunx系统验证爬虫的逻辑与windows没有什么区别,只是查询的方式不同。毕竟系统不一样了。这里我直接给一个示例:
如上图,liunx使用的命令是“host 要查询的ip地址”,其判断逻辑与windows系统一样。