Python3網(wǎng)絡(luò)爬蟲實戰(zhàn)-19、代理基本原理-創(chuàng)新互聯(lián)

我們在做爬蟲的過程中經(jīng)常會遇到這樣的情況,最初爬蟲正常運(yùn)行,正常抓取數(shù)據(jù),一切看起來都是那么的美好,然而一杯茶的功夫可能就會出現(xiàn)錯誤,比如 403 Forbidden,這時候打開網(wǎng)頁一看,可能會看到“您的 IP 訪問頻率太高”這樣的提示。出現(xiàn)這樣的現(xiàn)象的原因是網(wǎng)站采取了一些反爬蟲的措施,比如服務(wù)器會檢測某個 IP 在單位時間內(nèi)的請求次數(shù),如果超過了這個閾值,那么會直接拒絕服務(wù),返回一些錯誤信息,這種情況可以稱之為封 IP,于是乎就成功把我們的爬蟲禁掉了。

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:域名注冊、網(wǎng)站空間、營銷軟件、網(wǎng)站建設(shè)、崇信網(wǎng)站維護(hù)、網(wǎng)站推廣。

既然服務(wù)器檢測的是某個 IP 單位時間的請求次數(shù),那么我們借助某種方式來偽裝我們的 IP,讓服務(wù)器識別不出是由我們本機(jī)發(fā)起的請求,不就可以成功防止封 IP 了嗎?

那么在這里一種有效的方式就是使用代理,使用它我們可以成功偽裝 IP,避免本機(jī) IP 被封禁的情況,在后文會有詳細(xì)的代理使用的說明,在這之前我們需要先了解下代理的基本原理,它是怎樣實現(xiàn) IP 偽裝的呢?本節(jié)就讓我們先了解一下代理的概念。

1. 基本原理

我們常稱呼的代理實際上指的就是代理服務(wù)器,英文叫做 Proxy Server,它的功能是代理網(wǎng)絡(luò)用戶去取得網(wǎng)絡(luò)信息。形象地說,它是網(wǎng)絡(luò)信息的中轉(zhuǎn)站。在我們正常請求一個網(wǎng)站時,是發(fā)送了 Request 給 Web 服務(wù)器,Web 服務(wù)器把 Response 傳回給我們。如果設(shè)置了代理服務(wù)器,實際上就是在本機(jī)和服務(wù)器之間搭建了一個橋,此時本機(jī)不是直接向 Web 服務(wù)器發(fā)起請求,而是向代理服務(wù)器發(fā)出請求, Request 會發(fā)送給代理服務(wù)器,然后由代理服務(wù)器再發(fā)送給 Web 服務(wù)器,然后由代理服務(wù)器再把 Web 服務(wù)器返回的 Response 轉(zhuǎn)發(fā)給本機(jī),這樣我們同樣可以正常訪問網(wǎng)頁,但這個過程 Web 服務(wù)器識別出的真實的 IP 就不再是我們本機(jī)的 IP 了,就成功實現(xiàn)了 IP 偽裝,這就是代理的基本原理。

2. 代理的作用

那么代理有什么作用呢?我們可以簡單列舉如下:

  • 突破自身 IP 訪問限制,訪問一些平時不能訪問的站點(diǎn)。
  • 訪問一些單位或團(tuán)體內(nèi)部資源,如使用教育網(wǎng)內(nèi)地址段免費(fèi)代理服務(wù)器,就可以用于對教育網(wǎng)開放的各類 FTP 下載上傳,以及各類資料查詢共享等服務(wù)。
  • 提高訪問速度,通常代理服務(wù)器都設(shè)置一個較大的硬盤緩沖區(qū),當(dāng)有外界的信息通過時,同時也將其保存到緩沖區(qū)中,當(dāng)其他用戶再訪問相同的信息時, 則直接由緩沖區(qū)中取出信息,傳給用戶,以提高訪問速度。
  • 隱藏真實 IP,上網(wǎng)者也可以通過這種方法隱藏自己的 IP,免受***,對于爬蟲來說,我們用代理就是為了隱藏自身 IP,防止自身的 IP 被封鎖。

3. 爬蟲代理

對于爬蟲來說,由于爬蟲爬取速度過快,在爬取過程中可能遇到同一個 IP 訪問過于頻繁的問題,網(wǎng)站就會讓我們輸入驗證碼或登錄或者直接封鎖 IP,這樣會給爬取帶來極大的不便。

所以使用代理隱藏真實的 IP,讓服務(wù)器誤以為是代理服務(wù)器的在請求自己。這樣在爬取過程中通過不斷更換代理,就不會被封鎖,可以達(dá)到很好的爬取效果。

4. 代理分類

代理分類時可以根據(jù)協(xié)議區(qū)分也可以根據(jù)其匿名程度區(qū)分,下面分別總結(jié)如下:

根據(jù)協(xié)議區(qū)分

根據(jù)代理的協(xié)議區(qū)分,代理可以分為如下類別:

  • FTP 代理服務(wù)器,主要用于訪問 FTP 服務(wù)器,一般有上傳、下載以及緩存功能,端口一般為 21、2121 等。
  • HTTP 代理服務(wù)器,主要用于訪問網(wǎng)頁,一般有內(nèi)容過濾和緩存功能,端口一般為 80、8080、3128 等。
  • SSL/TLS 代理,主要用于訪問加密網(wǎng)站,一般有 SSL 或 TLS 加密功能(高支持 128 位加密強(qiáng)度),端口一般為 443。
  • RTSP 代理,主要用于 Realplayer 訪問 Real 流媒體服務(wù)器,一般有緩存功能,端口一般為 554。
  • Telnet代理,主要用于 telnet 遠(yuǎn)程控制(******計算機(jī)時常用于隱藏身份),端口一般為23。
  • POP3/SMTP 代理,主要用于 POP3/SMTP 方式收發(fā)郵件,一般有緩存功能,端口一般為 110/25。
  • SOCKS代理,只是單純傳遞數(shù)據(jù)包,不關(guān)心具體協(xié)議和用法,所以速度快很多,一般有緩存功能,端口一般為1080。SOCKS 代理協(xié)議又分為 SOCKS4 和 SOCKS5,SOCKS4 協(xié)議只支持 TCP,而 SOCKS5 協(xié)議支持 TCP 和 UDP,還支持各種身份驗證機(jī)制、服務(wù)器端域名解析等。簡單來說,SOCK4能做到的SOCKS5都可以做到,但SOCKS5能做到的SOCK4不一定能做到。

根據(jù)匿名程度區(qū)分

根據(jù)代理的匿名程度劃分,代理可以分為如下類別:

  • 高度匿名代理,高度匿名代理會將數(shù)據(jù)包原封不動的轉(zhuǎn)發(fā),在服務(wù)端看來就好像真的是一個普通客戶端在訪問,而記錄的 IP 是代理服務(wù)器的 IP。
  • 普通匿名代理,普通匿名代理會在數(shù)據(jù)包上做一些改動,服務(wù)端上有可能發(fā)現(xiàn)這是個代理服務(wù)器,也有一定幾率追查到客戶端的真實 IP。代理服務(wù)器通常會加入的 HTTP 頭有 HTTP_VIA 和 HTTP_X_FORWARDED_FOR。
  • 透明代理,透明代理不但改動了數(shù)據(jù)包,還會告訴服務(wù)器客戶端的真實 IP。這種代理除了能用緩存技術(shù)提高瀏覽速度,能用內(nèi)容過濾提高安全性之外,并無其他顯著作用,最常見的例子是內(nèi)網(wǎng)中的硬件防火墻。
  • 間諜代理,間諜代理指組織或個人創(chuàng)建的,用于記錄用戶傳輸?shù)臄?shù)據(jù),然后進(jìn)行研究、監(jiān)控等目的代理服務(wù)器。Python資源分享qun 784758214 ,內(nèi)有安裝包,PDF,學(xué)習(xí)視頻,這里是Python學(xué)習(xí)者的聚集地,零基礎(chǔ),進(jìn)階,都?xì)g迎

4. 常見代理設(shè)置

  • 使用網(wǎng)上的免費(fèi)代理,最好使用高匿代理,使用前抓取下來篩選一下可用代理,也可以進(jìn)一步維護(hù)一個代理池。
  • 使用付費(fèi)代理服務(wù),互聯(lián)網(wǎng)上存在許多代理商,可以付費(fèi)使用,質(zhì)量比免費(fèi)代理好很多。
  • ADSL撥號,撥一次號換一次 IP,穩(wěn)定性高,也是一種比較有效的解決方案。

在后文我們會詳細(xì)介紹這幾種代理的使用方式。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

當(dāng)前標(biāo)題:Python3網(wǎng)絡(luò)爬蟲實戰(zhàn)-19、代理基本原理-創(chuàng)新互聯(lián)
文章出自:http://www.muchs.cn/article34/ddshse.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供移動網(wǎng)站建設(shè)、定制網(wǎng)站、虛擬主機(jī)App設(shè)計、企業(yè)網(wǎng)站制作、自適應(yīng)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化