0712-2888027 189-8648-0214
微信公眾號(hào)

孝感風(fēng)信網(wǎng)絡(luò)科技有限公司微信公眾號(hào)

當(dāng)前位置:主頁(yè) > 技術(shù)支持 > PHP > 記錄搜索引擎的爬蟲(chóng)發(fā)現(xiàn)SAE有提供計(jì)數(shù)器服務(wù)

記錄搜索引擎的爬蟲(chóng)發(fā)現(xiàn)SAE有提供計(jì)數(shù)器服務(wù)

時(shí)間:2016-05-18來(lái)源:風(fēng)信官網(wǎng) 點(diǎn)擊: 896次
當(dāng)初小米樂(lè)園初搭建的時(shí)候發(fā)現(xiàn)SAE有提供計(jì)數(shù)器服務(wù),于是就搞一個(gè)放在主題文件的footer.php里,這樣每當(dāng)footer被加載的時(shí)候就累計(jì)數(shù)+1。這一弄就發(fā)現(xiàn)了問(wèn)題,因?yàn)樾∶讟?lè)園網(wǎng)站的訪(fǎng)問(wèn)量很小,主要是自己在寫(xiě)自己在看,但是呢發(fā)現(xiàn)計(jì)數(shù)器跑得飛快,一個(gè)晚上可以增加幾百個(gè)數(shù)。

而實(shí)際上用第三方網(wǎng)站統(tǒng)計(jì),一天也就幾個(gè)IP,PV撐死也就幾十而已。這一年多以來(lái),PV總數(shù)也只有一萬(wàn)多,而計(jì)數(shù)器已經(jīng)跑到七萬(wàn)多了。我知道這些都是搜索引擎爬蟲(chóng)的功勞。但還是很好奇計(jì)數(shù)器每個(gè)數(shù)字后面的八卦料。于是自己動(dòng)手,豐衣足食。在MySql里新建一個(gè)表“IPlog”來(lái)記錄IP,表有五個(gè)字段,`IP` , `Count` , `time` ,`HTTP_USER_AGENT`,`HTTP_REFERER`,`REQUEST_URI`,分別用來(lái)保存訪(fǎng)問(wèn)者的IP,計(jì)數(shù)器的數(shù)字,訪(fǎng)問(wèn)時(shí)間和訪(fǎng)問(wèn)來(lái)路及訪(fǎng)問(wèn)的頁(yè)面地址。然后在footer.php里計(jì)數(shù)器的地方把代碼放上去,這樣就可以記錄這些資料。

下面這段代碼是SAE專(zhuān)用,并且在SAE上有個(gè)計(jì)數(shù)器名稱(chēng)為“Count_sum”,在正常的PHP服務(wù)器上要修改一下才能用。

<?php
function CountLog() //自定義函數(shù),用于記錄訪(fǎng)問(wèn)者的IP到數(shù)據(jù)庫(kù) by cailman 2012.11.13
{
 
$mysql = new SaeMysql();
$fwIP = strip_tags( $_SERVER['REMOTE_ADDR'] );
$c = new SaeCounter();
$c-&gt;incr('Count_sum');
$fws = $c-&gt;get('Count_sum');
$sql = "INSERT  INTO `IPlog` ( `IP` , `Count` , `time` ,`HTTP_USER_AGENT`,`HTTP_REFERER`,`REQUEST_URI` ) VALUES ( '"  . $mysql-&gt;escape( $fwIP ) . "' , '" . intval( $fws ) . "' , NOW(), '"  . $mysql-&gt;escape( $_SERVER['HTTP_USER_AGENT'] ) . "', '"  . $mysql-&gt;escape( $_SERVER['HTTP_REFERER'] ) . "', '"  . $mysql-&gt;escape( $_SERVER['REQUEST_URI'] ) . "') ";
 
$mysql-&gt;runSql( $sql );
if( $mysql-&gt;errno() != 0 )
{
die( "Error:" . $mysql-&gt;errmsg() );
}
$mysql-&gt;closeDb();
 
}
 
CountLog();
 
?>

第二天看了一下數(shù)據(jù)庫(kù),從前一天的18點(diǎn)到第二天的12點(diǎn),18個(gè)小時(shí),共有大概200條記錄。其中大部分是各類(lèi)蛛蛛爬蟲(chóng)bot。分布比較均勻,每個(gè)小時(shí)都是10~20次左右的記錄。

一般來(lái)說(shuō)訪(fǎng)問(wèn)者的USER_AGENT會(huì)留下自己的對(duì)應(yīng)信息,例如操作系統(tǒng),語(yǔ)言,瀏覽器版本等等。各種爬蟲(chóng)一般都會(huì)主動(dòng)留下正確的信息。于是發(fā)現(xiàn)這個(gè)字段的開(kāi)頭幾乎全都是“Mozilla/4.0”或“Mozilla/5.0”,不管是爬蟲(chóng)還是正常訪(fǎng)問(wèn)者。上網(wǎng)搜了一下才發(fā)現(xiàn)這個(gè)原來(lái)是當(dāng)年微軟IE和網(wǎng)景瀏覽器留下來(lái)的遺跡,后來(lái)的所有瀏覽器和爬蟲(chóng)都神奇地采用這種USER_AGENT,題外話(huà)不說(shuō)了。

粗例分析了一下,說(shuō)說(shuō)爬蟲(chóng)的一些八卦吧。

這一晚捉到的爬蟲(chóng)覆蓋了幾大有名的搜過(guò)引擎,其中最勤快的是google和soso。
Googlebot、Mediapartners-Google(這是專(zhuān)門(mén)用來(lái)爬有g(shù)oogle adsense頁(yè)面的)累計(jì)45次,Sosospider來(lái)了31次,還有一個(gè)好像是不良爬蟲(chóng)的訪(fǎng)客,共訪(fǎng)問(wèn)41次。這仨就點(diǎn)了共訪(fǎng)問(wèn)數(shù)的六成了。

還有些比較有趣的東西,這些爬蟲(chóng)一般都會(huì)表明身份,并留下網(wǎng)址,好讓你去了解它的規(guī)則。
下面是各個(gè)爬蟲(chóng)留下的名片:

    Sogou web spider http://www.sogou.com/docs/help/webmasters.htm#07
    Googlebot http://www.google.com/bot.html
    Baiduspider http://www.baidu.com/search/spider.html
    Sosospider http://help.soso.com/webspider.htm
    bingbot http://www.bing.com/bingbot.htm
    YodaoBot http://www.yodao.com/help/webmaster/spider/
    YRSpider http://www.yunrang.com/yrspider.html
    YandexBot http://yandex.com/bots

還有些爬蟲(chóng)只留下名字,沒(méi)留下地址的:

    360Spider
    Yahoo! Slurp China

還有些名字即是身份和地址的:

    Xianguo.com 1 Subscribers

剛才說(shuō)有個(gè)貌似不良爬蟲(chóng),它留下的USER_AGENT是“Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; InfoPath.2; .NET CLR 2.0.50727)”,表明它是用NT5.1系統(tǒng)和IE6瀏覽器(這個(gè)狠)的主,其它的不大明白是什么,IP比較固定就2個(gè):60.28.113.193、60.28.113.196,根據(jù)網(wǎng)上的說(shuō)法,這貨老是抓Feed,而且德性很不好,看來(lái)后續(xù)可以把一些爬蟲(chóng)拉黑節(jié)省點(diǎn)服務(wù)器資源。

總的來(lái)說(shuō),最勤快的是Google爬蟲(chóng),而且唯一有偽裝成手機(jī)瀏覽器爬網(wǎng)的也是google(因?yàn)椴痪们把b了個(gè)移動(dòng)主題,手機(jī)訪(fǎng)問(wèn)小米樂(lè)園的話(huà),會(huì)啟動(dòng)手機(jī)專(zhuān)用的移動(dòng)主題,在記錄的時(shí)候我讓它有個(gè)特殊的標(biāo)志,可以知道是從移動(dòng)主題的footer.php記錄的),它的USER_AGENT是“Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_1 like Mac OS X; en-us) AppleWebKit/532.9 (KHTML, like Gecko) Version/4.0.5 Mobile/8B117 Safari/6531.22.7 (compatible; Googlebot-Mobile/2.1; +http://www.google.com/bot.html)”說(shuō)明它是一只化裝成IPhone的Google爬蟲(chóng),真是敬業(yè)啊。

這里面還有兩個(gè)搜索爬蟲(chóng)比較小眾。
YRSpider http://www.yunrang.com/yrspider.html
這是國(guó)產(chǎn)的云壤公司的爬蟲(chóng),不知道它在收集些什么東西。

YandexBot http://yandex.com/bots
這個(gè)應(yīng)該外國(guó)的一個(gè)搜索引擎,打開(kāi)看了一下,一個(gè)體驗(yàn)不是很好的搜索引擎。

看來(lái)后續(xù)可以繼續(xù)觀(guān)察,把一些不良IP拉黑,這樣才環(huán)保一點(diǎn),呵呵。

后來(lái)一時(shí)興起,搜了一下更改USER_AGENT,做為一個(gè)訪(fǎng)問(wèn)者,你的瀏覽器的USER_AGENT是可以隨便自己定義的,例如我把瀏覽器的USER_AGENT改成"Mozilla/5.0 (www.miyue.me)",這樣訪(fǎng)問(wèn)任何一個(gè)網(wǎng)站,都會(huì)在對(duì)方的日志里(如果有)留下我的網(wǎng)址,具體方法各個(gè)瀏覽不一樣,在網(wǎng)上可以直接搜到,就不轉(zhuǎn)了。這種除了調(diào)試外,基本上是屬于深夜拋媚眼的Geek玩法,哈哈。
欄目列表
推薦內(nèi)容
熱點(diǎn)內(nèi)容
展開(kāi)