判断搜索引擎蜘蛛显示不同内容(搜索引擎蜘蛛又称为什么)

前沿拓展:

判断搜索引擎蜘蛛显示不同内容

内容一样,字符出现的次数一样

1、认定为原创文章的必要条件

假如这个网站没有被收录,这篇文章会认为是原创吗? 当然不会!因为它根本不可能出现在搜索引擎的数据库里!

那么,如何让它被认定成为原创内容呢?

第一个条件,网站必须有被搜索引擎收录。假如这个网站被收录了,但是不经常更新呢? 很简单,如果不经常更新,发表的文章到被蜘蛛搜索到并收录的时候也会认为是原创的。

2、转载与采集后原创的认定

如果这篇文章被转载了呢? 如果文章被转载,那么看转载这篇文章的站更新周期与首次发表这篇文章的站的更新周期哪个更快。

不太明白更新周期?举个例子说明:比如在A站发表,B站转载,如果蜘蛛先访问了A站,发现了文章,再来到B站发现了文章,很明显的,原创权重归A站。

那么采集的情况是否符合这种情况? 当然,采集的情况一样。如果B采集A,但B收录比A早,B就可能变成原创!

3、蜘蛛的访问时间

如果蜘蛛先访问了B站呢? 当然权重给B站,一般的情况下都会这样!

如果B站转载的文章带了A站的原文章页面链接呢? 这就很明白了,刚收录的时候,如果排名,两条结果一起出现,有可能还是B站的排名好一点。 当然,文章转载次数多了以后,A站的链接越多,对A站的文章越有好处,排名会慢慢变成A站在前面。

如果另外转载的文章带的是B站页面的链接呢? 这种情况就搞笑了,给搜索引擎开了个玩笑,但它们如果判断不好,就变成了一个链接流行度的比赛了。不过,如果都有很多外部链接,并且相差不大,那么判断的规则应该回到原点,谁先被收录谁就是原创。

4、网页快照生成的日期

搜索结果中网页快照日期显示时间最早的,一般就是原创了吧! 不一定,这个说法要在一个更新周期之内,比如说文章发表后一周内,快照时间越早的地址将越有被认可为原创的可能。 但如果文章都发表了几个月了,说不定搜索引擎已经重新获取过快照了,快照的日期就变了!

还有其它的可能吗? 有,比如百度收录,他可能会有一个收录的数据库,经过过滤后,收录的内容才会到搜索结果里来。在这个期间就有一些问题了,比如A站首次发表,B站转载。蜘蛛先访问A站再访问B站。而后可能先把B站的结果放出来了,而A站还在数据库里。

所以说搜索引擎没有收录并不表示搜索引擎蜘蛛没有访问过这些内容,也许在搜索引擎的库存里已经有记录了,只是你查的时间没有放出来而已,就像25号才放出来的内容,但是快照是20号的,这就是搜索引擎的库存内容,同时这也是检验原创的核心时间点。

这种情况一般出现在新站与老站之间,A站发表,B站转载,但A站在搜索引擎的信任度并不高的时候。不过只要是A站先被访问到的,原创权还是A站的,这是最难分出来的情况,因为我们不知道蜘蛛先访问哪个站,除非你知道两个站的网站空间日志内容,能看到搜索引擎对两个页面的访问时间。

5、文章的伪原创

伪原创也会被认为是原创?大多数时候是这样的,搜索引擎蜘蛛智力,你不要给予很高的期望,它就相当于三岁的小孩子,不能明确辨别这些内容是否一样,因为它的思维太程式化了。如果你把文章的标题修改过,把文章的段落、结构、顺序等修改过,甚至是两篇或多篇内容差不多的文章混合在一起加工过,那么搜索引擎的蜘蛛就很难判断这篇文章是否被收录,或许它可以判断出有部分内容是相似或重复的,但是它不能因为这些细微的相似,而将这篇经过“深加工”的伪原创文章判断为是转载!当然,搜索引擎程式设计中有一个相似度的东西,比如文字内容相似度超过百分之几就会被认为是转载。


概述

最近阿里云经常会被各种爬虫光顾,有的是搜索引擎爬虫,有的不是,通常情况下这些爬虫都有UserAgent,而我们知道UserAgent是可以伪装的,UserAgent的本质是Http请求头中的一个选项设置,通过编程的方式可以给请求设置任意的UserAgent。

下面的Linux命令可以让你清楚的知道蜘蛛的爬行情况。我们针对nginx服务器进行分析,日志文件所在目录:/usr/local/nginx/logs/access.log,access.log这个文件记录的应该是最近一天的日志情况,首先请看看日志大小,如果很大(超过50MB)建议别用这些命令分析,因为这些命令很消耗CPU,或者更新下来放到分析机上执行,以免影响服务器性能。

常用蜘蛛的域名

常用蜘蛛的域名都和搜索引擎官网的域名相关,例如:

百度的蜘蛛通常是baidu.com或者baidu.jp的子域名google爬虫通常是googlebot.com的子域名微软bing搜索引擎爬虫是search.msn.com的子域名搜狗蜘蛛是crawl.sogou.com的子域名1、计算百度蜘蛛爬行的次数

cat access.log | grep Baiduspider | wc

详解Nginx如何查看搜索引擎蜘蛛爬虫行为:爬行次数、爬行页面等

最左面的数值显示的就是爬行次数。

2、百度蜘蛛的详细记录(Ctrl C可以终止)

cat access.log | grep Baiduspider

详解Nginx如何查看搜索引擎蜘蛛爬虫行为:爬行次数、爬行页面等

也可以用下面的命令:

cat access.log | grep Baiduspider | tail -n 10

cat access.log | grep Baiduspider | head -n 10

详解Nginx如何查看搜索引擎蜘蛛爬虫行为:爬行次数、爬行页面等

说明:只看最后10条或最前10条

3、百度蜘蛛抓取首页的详细记录

cat access.log | grep Baiduspider | grep “GET / HTTP”

详解Nginx如何查看搜索引擎蜘蛛爬虫行为:爬行次数、爬行页面等

百度蜘蛛好像对首页非常热爱每个钟头都来光顾,而谷歌和雅虎蜘蛛更喜欢内页。

4、百度蜘蛛派性记录时间点分布

cat access.log | grep “Baiduspider ” | awk ‘{print $4}'

详解Nginx如何查看搜索引擎蜘蛛爬虫行为:爬行次数、爬行页面等

5、百度蜘蛛爬行页面按次数降序列表# cat access.log |grep "Baiduspider"|awk '{print $7}'|sort | uniq -c |sort -r
详解Nginx如何查看搜索引擎蜘蛛爬虫行为:爬行次数、爬行页面等

篇幅有限,关于nginx去查看搜索引擎蜘蛛爬虫的行为的内容就介绍到这了,上面的一些命令都是比较常用的,后面会分享更多关于nginx方面内容,感兴趣的朋友可以关注下!

详解Nginx如何查看搜索引擎蜘蛛爬虫行为:爬行次数、爬行页面等

拓展知识:

判断搜索引擎蜘蛛显示不同内容

<?php
// 下面是一些常见的蜘蛛名
$flag = false;
$tmp = $_SERVER['HTTP_USER_AGENT'];
if(strpos($tmp, 'Googlebot') !== false){
$flag = true;
} else if(strpos($tmp, 'Baiduspider') >0){
$flag = true;
} else if(strpos($tmp, 'Yahoo! Slurp') !== false){
$flag = true;
} else if(strpos($tmp, 'msnbot') !== false){
$flag = true;
} else if(strpos($tmp, 'Sosospider') !== false){
$flag = true;
} else if(strpos($tmp, 'YodaoBot') !== false || strpos($tmp, 'OutfoxBot') !== false){
$flag = true;
} else if(strpos($tmp, 'Sogou web spider') !== false || strpos($tmp, 'Sogou Orion spider') !== false){
$flag = true;
} else if(strpos($tmp, 'fast-webcrawler') !== false){
$flag = true;
} else if(strpos($tmp, 'Gaisbot') !== false){
$flag = true;
} else if(strpos($tmp, 'ia_archiver') !== false){
$flag = true;
} else if(strpos($tmp, 'altavista') !== false){
$flag = true;
} else if(strpos($tmp, 'lycos_spider') !== false){
$flag = true;
} else if(strpos($tmp, 'Inktomi slurp') !== false){
$flag = true;
}
if($flag == false){
//正常用户代码
} else {
//蜘蛛处理代码
}
?>
可以放在网页程序的开头

追问

具体放哪呢?假如主页模板是index.htm 那放在HEAD之间?可以放其他地方呢?你这个是复制的呀 我看过了呀