Ⅰ 網頁防採集策略
網頁防採集策略
目前防採集的方法有很多種,先介紹一下常見防採集策略方法和它的弊端及採集對策:
一、判斷一個IP在一定時間內對本站頁面的訪問次數,如果明顯超過了正常人瀏覽速度,就拒絕此IP訪問。
弊端:
1、此方法只適用於動態頁面,如:asp\\jsp\\php等...靜態頁面無法判斷某個IP一定時間訪問本站頁面的次數。
2、此方法會嚴重影響搜索引擎蜘蛛對其收錄,因為搜索引擎蜘蛛收錄時,瀏覽速度都會比較快而且是多線程。此方法也會拒絕搜索引擎蜘蛛收錄站內文件。
採集對策:只能放慢採集速度,或者不採。
建議:做個搜索引擎蜘蛛的IP庫,只允許搜索引擎蜘蛛快速瀏覽站內內容。搜索引擎蜘蛛的IP庫的收集,也不太容易,一個搜索引擎蜘蛛,也不一定只有一個固定的IP地址。
評論:此方法對防採集比較有效,但卻會影響搜索引擎對其收錄。
二、用javascript加密內容頁面
弊端:此方法適用於靜態頁面,但會嚴重影響搜索引擎對其收錄情況,搜索引擎收到到的內容,也都是加密後的內容。
採集對策:建議不採,如非要采,就把解密碼的JS腳本也採下來。
建議:目前沒有好的改良建議。
評論:建議指望搜索引擎帶流量的站長不要使用此方法。
三、把內容頁面里的特定標記替換為」特定標記+隱藏版權文字「
弊端:此方法弊端不大,僅僅會增加一點點的頁面文件大小,但容易反採集。
採集對策:把採集來的含有隱藏版權文字內容的版權文字替掉,或替換成自己的版權。
建議:目前沒有好的改良建議。
評論:自己感覺實用價值不大,就算是加上隨機的隱藏文字,也等於畫蛇添足。
四、只允許用戶登陸後才可以瀏覽
弊端:此方法會嚴重影響搜索引擎蜘蛛對其收錄
採集對策:目前落伍已經有人發了對策文章 ,具體對策就看這個吧《ASP小偷程序如何利用XMLHTTP實現表單的提交以及cookies或session的發送》。
建議:目前沒有好的改良建議。
評論:建議指望搜索引擎帶流量的站長不要使用此方法。不過此方法防一般的採集程序,還是有點效果的。
五、用javascript、vbscript腳本做分頁
弊端:影響搜索引擎對其收錄。
採集對策:分析javascript、vbscript腳本,找出其分頁規則,自己做個對應此站的分頁集合頁即可。
建議:目前沒有好的改良建議。
評論:感覺懂點腳本語言的人都能找出其分頁規則。
六、只允許通過本站頁面連接查看,如:Request.ServerVariables(「HTTP_REFERER「)
弊端:影響搜索引擎對其收錄。
採集對策:不知道能不能模擬網頁來源。。。。目前我沒有對應此方法的採集對策。
建議:目前沒有好的改良建議。
評論:建議指望搜索引擎帶流量的站長不要使用此方法。不過此方法防一般的採集程序,還是有點效果的。
從以上可以看出,目前常用的防採集方法,要麼會對搜索引擎收錄有較大影響,要麼防採集效果不好,起不到防採集的效果。那麼,還有沒有一種有效防採集,而又不影響搜索引擎收錄的方法呢?那就請繼續往下看吧!
作者:pujiwang 2006-6-22 14:12:15 | 回復此帖子
廣而告之:
2 回復:[轉帖]網頁防採集策略 防採集的一些思路的探討
防採集的一些思路的探討
關鍵詞: 採集
1、用不同的模板
對於用程序的網站來說,不大可行,一個網站的模板最多也就幾套吧。
2、使用robots禁止訪問網頁目錄
這個方法可以有效的防止採集,不過將搜索引擎也封掉了,對於靠搜索引擎吃飯的站長們來說,得不償失。
一個例子,Disallow 後面就是禁止訪問的目錄:
作者: 218.19.189.* 封 2006-10-20 11:35 回復此發言 刪除
--------------------------------------------------------------------------------
2 [轉帖]網頁防採集策略
User-agent: *
Disallow: /admin
Disallow: /attachments
Disallow: /images
Disallow: /forumdata
Disallow: /include
3、使用HTTP_REFERER禁止採集,發現來自非本站連接就禁止察看葉面,就像前一段落伍im286.net防DDOS那個禁止調用一樣。
這個方法可以比較有效的防止採集,不過也一樣把搜索引擎封掉了,對於靠搜索引擎吃飯的站長們來說,得不償失。
對高手無效,因為HTTP_REFERER可以偽造。但對一般使用採集的人來說,已經足夠應付了。
例:
php
if(preg_replace("/https?://([^/]+).*/i", "1", $HTTP_SERVER_VARS['HTTP_REFERER']) != $HTTP_SERVER_VARS['HTTP_HOST']) {
exit('警告----你的操作已經被禁止。http://www.ic98.com';);
}
4、使用HTTP_REFERER偽造內容
這個方法可以比較有效的防止採集,不過對於搜索引擎來說,查到的東西跟你偽造的東西一樣的,可能會影響收錄。(如有不對,請高手指出)
同上,對於高手無效。
5、使用java加密內容。
這個可能會比較有效,但是我對java一竅不通,也就不清楚如何入手了。
但我想,既然你這樣使得別人採集到亂碼,搜索引擎有可能也是收錄到亂碼的(我不清楚搜索引擎怎麼工作,不過我猜測他們是察看網頁源代碼的。),也就影響收錄。
6、使用java加密網址
同上,有可能讓搜索引擎無法搜索到你的網頁。
7、生成pdf文件、生成圖片
這個方法可以比較有效的防止採集,不過照樣讓搜索引擎望而卻止。
8、加上自己的版權信息
這個方法最大的好處就是不影響搜索引擎,效果馬馬虎虎,一般上可以讓採集者採集到帶有自己版權的稿件內容。但是對於可以過濾廣告的採集程序來說,不大有效。
以下是作者給俺的PM:
Quote:
你的版權是不是加了你的網站和網址?
只要把網址和網站名替換成他的就可以了啊.這樣還讓他有了版權功能呢.
反正防采真是頭疼....
有點麻煩,我的思路是將網站名稱分成一個一個字來顯示,他不可能將每個字都替換掉吧?不過要這樣我就沒辦法了。比如說我將我的 武俠網 拆開,分成
武俠網
,$rand_color*是隨機顏色,可以自己控制的,如果是動態網頁的話,還配合HTTP_REFERER來搞隨機,這樣子隨機性就更大了。一般上,盡量製造難度就是了。模板也可以製造隨機性,幾個相似的模板輪流來弄,這樣子讓人採集的難度更大。
不過說實話,要使他們真要搞,那是沒辦法的事,不過至少要花他們很多的時間去研究。在此之前,他們可能沒耐性轉向別的站了。
另外,最好不要讓人知道你使用隨機函數。一般人只是稍微看一下網頁代碼,就開始採集了。
作者:pujiwang 2006-6-22 14:13:53 | 回復此帖子
3 回復:[轉帖]網頁防採集策略
防採集程序
下午無聊寫著完,寫完後自己仔細看了看防止採集還是有一定的效果的,哈哈,要的拿去用吧!
<%
Dim AppealNum,AppealCount
AppealNum=10 '同一IP60秒內請求限制10次
AppealCount=Request.Cookies("AppealCount")
If AppealCount="" Then
response.Cookies("AppealCount")=1
AppealCount=1
response.cookies("AppealCount").expires=dateadd("s",60,now())
Else
response.Cookies("AppealCount")=AppealCount+1
response.cookies("AppealCount").expires=dateadd("s",60,now())
End If
if int(AppealCount)>int(AppealNum) then
response.write "歇一會兒吧!整天採集你煩不煩啊!"
response.end
End If
%>
作者:pujiwang 2006-6-22 14:16:31 | 回復此帖子
4 回復:[轉帖]網頁防採集策略
[討論]防採集這幾天上網,竟然也現我的整站被人家全部採集去了。暈倒,幾年的資料就這樣便宜人家。
還好,人家是個懶蟲,欄目都不分,鬼才會去看。
這樣才想起怎樣防止採集的方法。
注意,只是討論可行性,還沒有提供解決方案。
採集與搜索引擎的機器人不同。採集需要對網頁進行分析,以找到規則,分別對標題和內容進行讀取並記錄到資料庫中。
如果我們能夠把網頁做成沒有規則,採集也就無從入手了。
說到規則,我就想趣了空格。
空格這東西,在HTM的<>中,並不產生作用,也就是說,一個空格的位置,你多加幾個也是沒關系的。象<table>你可以寫成< table>,<table >,< table >。都可以,所以,如果在網頁裡面,特別是採集程序重點分析的位置,我們利用程序,在這些位置加些空格,採集也就難以下手了,就算採到了,也就幾篇而已,影響不大。
我准備這樣做,象原來在模板中的<table>,我會改成<{$space1$}table{$space2$}>,在這里,{$space1$}和{$space2$}是自定義標簽(也可以融合到程序中),然後在程序中使用隨機數來決定這兩個標簽用多少個空格來代替。
呵呵,人家現在想用<table>來做為特徵採集是完全做不到的了。但對於我的網頁,顯示上一點影響也沒有,對於搜索引擎的機器人也一點影響沒有。
我想這應該是最合適的方法。
希望做過採集或改過採集的討論一下。
作者:pujiwang 2006-6-22 14:18:27 | 回復此帖子
Ⅱ 網站如何避免被採集呢有什麼好的方法嗎
可以設置的,叫你們的建站人員搞個代碼加密,讓別人不能採集,不能復制你們的文章就可以了。
Ⅲ 網頁中怎樣防止網站被採集
三種實用的方法。 1、文章頭尾加隨機廣告.. 2、文章列表加隨機不同的鏈接標簽,比如<a href="",<a class="dds" href='' 3、正文頭尾或列表頭尾添加<!--重復特徵代碼--> 第一種防採集方法: 下面我詳細說一下這三種方法的實際應用: 如果全加上,絕對可以有效的防採集,單獨加一種就可以讓採集者頭疼。。 完全可以對付通用的CMS採集程序。。 在採集時,通常都是指定頭尾特徵從哪到哪過濾.這里我們先講第一種方法,文章頭尾加隨機廣告.. 隨機廣告是不固定的。 比如你的文章內容是"歡迎訪問阿里西西",那麼隨機廣告的加入方法: <div id="xxx"> 隨機廣告1歡迎訪問阿里西西隨機廣告2 </div> 注:隨機廣告1和隨機廣告2每篇文章只要隨機顯示一個就可以了. 第二種防採集方法: <!--<div id="xxx_文章ID">--> 其它標題或內容... <!--<div id="xxx_文章ID">--> <div id="xxx_文章ID"> 隨機廣告1歡迎訪問阿里西西隨機廣告2 <--</div>--> </div> <--</div>--> 這是第二種防採集方法。在文章正文頁面插入重復特徵頭尾代碼的注釋。 當然,這個可以用正則去掉,但足於對付通用的採集系統。。 第三種防採集方法: 第三種加在文章的列表,隨便鏈接樣式: <a href="xxx.html">標題一</a> <a alt="xxx" href="xxx.html">標題二</a> <a href='xxx.html'>標題三</a> <a href=xxx.html>標題四</a> 原理是讓採集的人無法抓到列表鏈接規律,無法批量進行採集. 如果三種方法全部加上,我想一定能讓想採集的人頭疼半天而放棄的.. 如果你還問,如何防止別人復制採集呢?要做到這一點容易,把你的網站的網線拔了,自己給自己看就好了.哈哈. 如果你的文章來自原創,那像可以加上版權聲明,別人隨意轉載時,你可以要求對方刪除你有版權的文章.
Ⅳ 網站如何防止信息被採集
防止網站被人採集的方法
2009-08-23
信息來源:赤峰信息網
視力保護色:
1、網站內容採用多套模板,隨機模板,給採集程序設置過高的門檻;但這招對整站採集器不起作用。
2、網站內容里隨機插入本網站的版權,如域名,網站名稱,網站主人,而這些標識可以分開來寫,或中間加短橫-,或換成全形字元,防止被自動過濾。
3、給我們網站里的圖片打上自己的logo標識,比如在圖片的右下角打上網站的名稱+域名;採集者把我們的網站的圖片採集過去,不可能一張一張圖片都ps;所以,他們採集我們的網站內容,等於變相地幫助我們宣傳網站。
4、這招比較損。如果對方採集的程序幾乎和你的網站同步,那麼你可以採用這招了。先在我們的網站里添加幾篇標題以及文章開頭結尾都很正規的內容,而在文章內容中間偷偷插入非法關鍵字,有多非法就要多非法,多插入幾個,隱蔽工作做的也要到位,然後在我們的網站robots.txt文件里禁止搜索引擎抓取這幾篇文章。等對方採集了這幾篇文章後,我們立即刪除自己網站上的這些文章,然後向採集者伺服器當地網警舉報。
Ⅳ 如何繞開網站防護抓取數據
控制下載頻率大規模集中訪問對伺服器的影響較大,爬蟲可以短時間增大伺服器負載。這里需要注意的是:設定下載等待時間的范圍控制,等待時間過長,不能滿足短時間大規模抓取的要求,等待時間過短則很有可能被拒絕訪問。在之前「從url獲取HTML」的方法里,對於httpGet的配置設置了socket超時和連接connect超時,其實這里的時長不是絕對的,主要取決於目標網站對爬蟲的控制。
另外,在scrapy爬蟲框架里,專有參數可以設置下載等待時間download_delay,這個參數可以設置在setting.py里,也可以設置在spider里。
IP的訪問頻率被限制,一些平台為了防止多次訪問網站,會在某個同一個IP在單元時間內超過一定的次數的時候,將禁止這個IP繼續訪問。對於這個限制IP訪問效率,可以使用代理IP的方法來解決問題比如使用IPIDEA。
採用分布式爬取分布式爬取的也有很多Githubrepo。原理主要是維護一個所有集群機器能夠有效分享的分布式隊列。使用分布式爬取還有另外一個目的:大規模抓取,單台機器的負荷很大,況且速度很慢,多台機器可以設置一個master管理多台slave去同時爬取。
修改User-Agent最常見的就是偽裝瀏覽器,修改User-Agent(用戶代理)。User-Agent是指包含瀏覽器信息、操作系統信息等的一個字元串,也稱之為一種特殊的網路協議。伺服器通過它判斷當前訪問對象是瀏覽器、郵件客戶端還是網路爬蟲。在request.headers里可以查看user-agent,關於怎麼分析數據包、查看其User-Agent等信息,這個在前面的文章里提到過。
具體方法可以把User-Agent的值改為瀏覽器的方式,甚至可以設置一個User-Agent池(list,數組,字典都可以),存放多個「瀏覽器」,每次爬取的時候隨機取一個來設置request的User-Agent,這樣User-Agent會一直在變化,防止被牆。
綜上所述,爬蟲怎麼突破反爬蟲的方法比較多,上文從更換IP、控制下載頻率、分布式爬取、修改User-Agent這四個方面介紹了突破反爬蟲機制的方法,從而實現數據的爬取。
Ⅵ 如何防止網站內容被別的網站惡意抓取
三種實用的方法。
1、文章頭尾加隨機廣告..
2、文章列表加隨機不同的鏈接標簽,比如<a href="",<a class="dds" href=''
3、正文頭尾或列表頭尾添加<!--重復特徵代碼-->
第一種防採集方法:
下面我詳細說一下這三種方法的實際應用:
如果全加上,絕對可以有效的防採集,單獨加一種就可以讓採集者頭疼。。
完全可以對付通用的CMS採集程序。。
在採集時,通常都是指定頭尾特徵從哪到哪過濾.這里我們先講第一種方法,文章頭尾加隨機廣告..
隨機廣告是不固定的。
比如你的文章內容是"歡迎訪問阿里西西",那麼隨機廣告的加入方法:
<div id="xxx">
隨機廣告1歡迎訪問阿里西西隨機廣告2
</div>
注:隨機廣告1和隨機廣告2每篇文章只要隨機顯示一個就可以了.
第二種防採集方法:
<!--<div id="xxx_文章ID">-->
其它標題或內容...
<!--<div id="xxx_文章ID">--> <div id="xxx_文章ID">
隨機廣告1歡迎訪問阿里西西隨機廣告2
<--</div>-->
</div>
<--</div>-->
這是第二種防採集方法。在文章正文頁面插入重復特徵頭尾代碼的注釋。
當然,這個可以用正則去掉,但足於對付通用的採集系統。。
第三種防採集方法:
第三種加在文章的列表,隨便鏈接樣式:
<a href="xxx.html">標題一</a>
<a alt="xxx" href="xxx.html">標題二</a>
<a href='xxx.html'>標題三</a>
<a href=xxx.html>標題四</a>
原理是讓採集的人無法抓到列表鏈接規律,無法批量進行採集.
如果三種方法全部加上,我想一定能讓想採集的人頭疼半天而放棄的..
如果你還問,如何防止別人復制採集呢?要做到這一點容易,把你的網站的網線拔了,自己給自己看就好了.哈哈.
如果你的文章來自原創,那像可以加上版權聲明,別人隨意轉載時,你可以要求對方刪除你有版權的文章.
Ⅶ 有什麼好方法防止自己網頁的內容被採集
防止自己網頁的內容被採集有非常多的方法
方法一:內容配圖加水印
當你的文章中含有圖片時候,可以給圖片打上水印,這樣就留下了你的信息,對方要採集或者復制您文章後,不可能一張一張的去處水印,這樣也算是變相地幫助我們宣傳網站。
方法二:內容隨機穿插版權信息
在不影響用戶閱讀體驗的情況下,盡量在內容段落之間隨機插入一些之間的信息,比如:網站名字,鏈接,版權作者,QQ等,這樣的話,就算對方使用採集器過濾也不可能每篇文章都能過濾得掉。
方法三:作品結尾留作者信息及鏈接
不過這個方法作用不是很大,因為很多人復制或轉載內容時直接去掉了,可以參考方法二,適當在段落結尾處不影響閱讀的情況下下隨機插入較好。
方法四:主動推送網址給網路收錄
網路給出的鏈接提交方式有以下三種:
1、主動推送:最為快速的提交方式,推薦您將站點當天新產出鏈接立即通過此方式推送給網路,以保證新鏈接可以及時被網路收錄。
2、sitemap:您可以定期將網站鏈接放到sitemap中,然後將sitemap提交給網路。網路會周期性的抓取檢查您提交的sitemap,對其中的鏈接進行處理,但收錄速度慢於主動推送。
3、手工提交:一次性提交鏈接給網路,可以使用此種方式。
方法五:利用JS加密網頁內容
這個方法是在個別網站上看到的,非常暴力。缺點:搜索引擎爬蟲無法識別收錄和通殺所有採集器,針對極度討厭搜索引擎和採集器的網站的站長使用,量力而行,您能豁出去了,別人也就沒辦法採集你了。
方法六:網站隨機採用不同模版
分析:因為採集器是根據網頁結構來定位所需要的內容,一旦先後兩次模版更換,採集規則就失效,不錯。而且這樣對搜索引擎爬蟲沒影響。
適用網站:動態網站,並且不考慮用戶體驗。
採集器會怎麼做:一個網站模版不可能多於10個吧,每個模版弄一個規則就行了,不同模版採用不同採集規則。如果多於10個模版了,既然目標網站都那麼費勁的更換模版,成全他,撤。
方法七:利用腳本語言做分頁(隱藏分頁)
分析:還是那句,搜索引擎爬蟲不會針對各種網站的隱藏分頁進行分析,這影響搜索引擎對其收錄。但是,採集者在編寫採集規則時,要分析目標網頁代碼,懂點腳本知識的人,就會知道分頁的真實鏈接地址。
適用網站:對搜索引擎依賴度不高的網站,還有,採集你的人不懂腳本知識。
採集器會怎麼做:應該說採集者會怎麼做,他反正都要分析你的網頁代碼,順便分析你的分頁腳本,花不了多少額外時間。
方法八:限制IP地址單位時間的訪問次數
分析:沒有哪個常人一秒鍾內能訪問相同網站5次,除非是程序訪問,而有這種喜好的,就剩下搜索引擎爬蟲和討厭的採集器了。
弊端:一刀切,這同樣會阻止搜索引擎對網站的收錄。
適用網站:不太依靠搜索引擎的網站。
採集器會怎麼做:減少單位時間的訪問次數,減低採集效率。
希望可以幫到你!
Ⅷ 網站怎麼做到別人採集的時候,採集不到,就像下圖一樣,防採集啊
方法是有但我也事先說明。如果你真的想不讓有採集,那麼搜索引擎也同樣收錄不了你的網站內容。因為搜索引擎的收錄原理說白了就是採集+添加索引。防採集最可靠的方法:全站使用AJAX,你的網站從此不會被人採集,要采也只能採到網頁標題。 還有一個,基於你是圖片站,你可以使用防盜鏈來基本抵制圖片外泄。防盜鏈功能需要在伺服器系統上做。所以建議你自己開一個伺服器,或者讓你的空間供應商加上防盜鏈功能。
Ⅸ 如何有效防止自己網站的內容被別人採集
防止採集第一種方法:在文章的頭尾加上隨機不固定的內容。網站採集者在採集時,通常都是指定一個開始位置和一個結束位置,截取中間的內容。
比如你的文章內容是"有訊軟體信息網",則隨機內容的加入方法:
<div id="xxx">隨機內容1+有訊軟體信息網+隨機內容2</div>
注:隨機內容1和隨機內容2每篇文章只要隨機顯示一個就可以了.
防止採集第二種方法:在文章正文頁面插入重復特徵頭尾代碼的注釋。
文章列表加隨機不同的鏈接標簽,比如<a href="" class="xxx"><a class="xxx" href=''>,當然,這個可以用正則去掉,但足於對付通用的CMS採集系統了.
<!--<div id="xxx_文章ID">-->
其它標題或內容...
<!--<div id="xxx_文章ID">--> <div id="xxx_文章ID">
隨機內容1歡迎有訊軟體信息網隨機內容2
<--</div>--></div><--</div>-->
即:正文頭尾或列表頭尾添加<!--重復特徵代碼-->
防採集第三種方法:加在文章列表的隨便鏈接樣式。目的是讓採集的人無法抓到列表鏈接規律,無法批量進行採集.