2013-10-28 分類: 網(wǎng)站建設
數(shù)據(jù)采集爬蟲ip代理的原理 ,我們在做爬蟲的過程中經(jīng)常會遇到這樣的情況,最初爬蟲正常運行,正常抓取數(shù)據(jù),一切看起來都是那么正常,然而一杯茶的功夫可能就會出現(xiàn)錯誤,比如403 Forbidden。
這時候打開網(wǎng)頁一看,可能會看到“您的IP訪問頻率太高”這樣的提示。出現(xiàn)這種現(xiàn)象的原因是網(wǎng)站采取了一些反爬蟲措施。出現(xiàn)這種情況有效的解決方式就是使用代理IP
比如,服務器會檢測某個IP在單位時間內(nèi)的請求次數(shù),如果超過了這個閾值,就會直接拒絕服務,返回一些錯誤信息,這種情況可以稱為封IP。
既然服務器檢測的是某個IP單位時間的請求次數(shù),那么借助某種方式來偽裝我們的IP,讓服務器識別不出是由我們本機發(fā)起的請求,不就可以成功防止封IP了嗎?
一種有效的方式就是使用ip代理,后面會詳細說明ip代理的用法。在這之前,需要先了解下代理的基本原理,它是怎樣實現(xiàn)IP偽裝的呢?
基本原理
代理實際上指的就是代理服務器,英文叫作proxy server,它的功能是代理網(wǎng)絡用戶去取得網(wǎng)絡信息。
形象地說,它是網(wǎng)絡信息的中轉(zhuǎn)站。
在我們正常請求一個網(wǎng)站時,是發(fā)送了請求給Web服務器,Web服務器把響應傳回給我們。
如果設置了代理服務器,實際上就是在本機和服務器之間搭建了一個橋,此時本機不是直接向Web服務器發(fā)起請求,而是向代理服務器發(fā)出請求,請求會發(fā)送給代理服務器,然后由代理服務器再發(fā)送給Web服務
器,接著由代理服務器再把Web服務器返回的響應轉(zhuǎn)發(fā)給本機。
這樣我們同樣可以正常訪問網(wǎng)頁,但這個過程中Web服務器識別出的真實IP就不再是我們本機的IP了,就成功實現(xiàn)了IP偽裝,這就是代理的基本原理。
代理的作用
那么,代理有什么作用呢?我們可以簡單列舉如下。
突破自身IP訪問限制,訪問一些平時不能訪問的站點。
訪問一些單位或團體內(nèi)部資源:比如使用教育網(wǎng)內(nèi)地址段免費代理服務器,就可以用于對教育網(wǎng)開放的各類FTP下載上傳,以及各類資料查詢共享等服務。
提高訪問速度:通常代理服務器都設置一個較大的硬盤緩沖區(qū),當有外界的信息通過時,同時也將其保存到緩沖區(qū)中,當其他用戶再訪問相同的信息時,則直接由緩沖區(qū)中取出信息,傳給用戶,以提高訪問速度。 隱藏真實IP:上網(wǎng)者也可以通過這種方法隱藏自己的IP,免受攻擊。對于爬蟲來說,我們用代理就是為了隱藏自身IP,防止自身的IP被封鎖。
爬蟲代理IP 對于爬蟲來說,由于爬蟲爬取速度過快,在爬取過程中可能遇到同一個IP訪問過于頻繁的問題,此時網(wǎng)站就會讓我們輸入驗證碼登錄或者直接封鎖IP,這樣會給爬取帶來極大的不便。
使用代理隱藏真實的IP,讓服務器誤以為是代理服務器在請求自己。這樣在爬取過程中通過不斷更換代理,就不會被封鎖,可以達到很好的爬取效果。 4. 代理分類
代理分類時,既可以根據(jù)協(xié)議區(qū)分,也可以根據(jù)其匿名程度區(qū)分。 (1) 根據(jù)協(xié)議
根據(jù)代理的協(xié)議,代理可以分為如下類別。
FTP代理服務器:主要用于訪問FTP服務器,一般有上傳、下載以及緩存功能,端口一般為21、2121等。
HTTP代理服務器:主要用于訪問網(wǎng)頁,一般有內(nèi)容過濾和緩存功能,端口一般為80、8080、3128等。
SSL/TLS代理:主要用于訪問加密網(wǎng)站,一般有SSL或TLS加密功能(高支持128位加密強度),端口一般為443。
RTSP代理:主要用于訪問Real流媒體服務器,一般有緩存功能,端口一般為554。
Telnet代理:主要用于telnet遠程控制(黑客入侵計算機時常用于隱藏身份),端口一般為23。
POP3/SMTP代理:主要用于POP3/SMTP方式收發(fā)郵件,一般有緩存功能,端口一般為110/25。
SOCKS代理:只是單純傳遞數(shù)據(jù)包,不關(guān)心具體協(xié)議和用法,所以速度快很多,一般有緩存功能,端口一般為1080。
SOCKS代理協(xié)議又分為SOCKS4和SOCKS5,前者只支持TCP,而后者支持TCP和UDP,還支持各種身份驗證機制、服務器端域名解析等。簡單來說,SOCK4能做到的SOCKS5都可以做到,但SOCKS5能做到的SOCK4不一定能做到。
(2) 根據(jù)匿名程度
根據(jù)代理的匿名程度,代理可以分為如下類別。
高匿名代理:會將數(shù)據(jù)包原封不動地轉(zhuǎn)發(fā),在服務端看來就好像真的是一個普通客戶端在訪問,而記錄的IP是代理服務器的IP。
普通匿名代理:會在數(shù)據(jù)包上做一些改動,服務端上有可能發(fā)現(xiàn)這是個代理服務器,也有一定幾率追查到客戶端的真實IP。代理服務器通常會加入的HTTP頭有HTTP_VIA和HTTP_X_FORWARDED_FOR。
透明代理:不但改動了數(shù)據(jù)包,還會告訴服務器客戶端的真實IP。這種代理除了能用緩存技術(shù)提高瀏覽速度,能用內(nèi)容過濾提高安全性之外,并無其他顯著作用,最常見的例子是內(nèi)網(wǎng)中的硬件防火墻。
間諜代理:指組織或個人創(chuàng)建的用于記錄用戶傳輸?shù)臄?shù)據(jù),然后進行研究、監(jiān)控等目的的代理服務器。
常見代理設置
使用網(wǎng)上的免費代理:最好使用高匿代理,另外可用的代理不多,需要在使用前篩選一下可用代理,也可以進一步維護一個代理池。
使用付費代理服務:互聯(lián)網(wǎng)上存在許多代理商,可以付費使用,質(zhì)量比免費代理好很多。
ADSL撥號:撥一次號換一次IP,穩(wěn)定性高,但是比較繁瑣,也是一種比較有效的解決方案。
當前標題:數(shù)據(jù)采集爬蟲ip代理的原理
新聞來源:http://www.rwnh.cn/news26/4126.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供營銷型網(wǎng)站建設、外貿(mào)建站、網(wǎng)頁設計公司、靜態(tài)網(wǎng)站、手機網(wǎng)站建設、自適應網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容