代理IP被禁怎么辦?隨著互聯(lián)網(wǎng)時(shí)代的發(fā)展,爬蟲(chóng)IP的使用越來(lái)越普遍,爬蟲(chóng)IP的使用也并非暢通無(wú)阻。我們也會(huì)遇到這樣的情況,就是爬蟲(chóng)IP被封禁,那么爬蟲(chóng)代理IP被封禁怎么辦?
爬蟲(chóng)和反爬蟲(chóng)從來(lái)都是一個(gè)高一尺高一丈的姿態(tài)。反爬蟲(chóng)技術(shù)增加了爬行的難度。各種爬蟲(chóng)的抓取過(guò)程可以說(shuō)是與各種站長(zhǎng)的斗智斗勇,各種解決方案可謂層出不窮。不過(guò)這里的“簡(jiǎn)單”解決方案,肯定是基于一些基本方法,分分鐘就能上手。
用戶(hù)代理偽裝和輪換
不同版本的瀏覽器有不同的user_agent,是瀏覽器類(lèi)型的詳細(xì)信息,也是瀏覽器提交Http請(qǐng)求的重要頭信息。我們可以為每個(gè)請(qǐng)求提供不同的user_agent,繞過(guò)網(wǎng)站檢測(cè)客戶(hù)端的反爬蟲(chóng)機(jī)制。例如,您可以將許多user_agent放在一個(gè)列表中,每次隨機(jī)選擇一個(gè)來(lái)提交訪問(wèn)請(qǐng)求。使用代理IP和輪換
檢查ip的訪問(wèn)狀態(tài)是網(wǎng)站反爬行機(jī)制最喜歡的方式。此時(shí),您可以更改不同的ip地址來(lái)抓取內(nèi)容。當(dāng)然,你有很多主機(jī)或vps有公共ip地址,這是一個(gè)更好的選擇。如果沒(méi)有,可以考慮用代理服務(wù)器幫你獲取網(wǎng)頁(yè)內(nèi)容,然后轉(zhuǎn)發(fā)回你的電腦。代理透明性可分為透明代理、匿名代理和高度匿名代理:
透明性:目標(biāo)網(wǎng)站知道你使用了代理和你的源IP地址,顯然不符合這里使用代理的初衷。
匿名代理:匿名程度比較低,就是網(wǎng)站知道你用了代理,但是不知道你的源IP地址。
高隱藏代理:這是最安全的方法。目標(biāo)網(wǎng)站不知道你用的代理,也不知道你的源IP。
獲取代理的方式是購(gòu)買(mǎi),當(dāng)然也可以免費(fèi)爬。這里(http://www.xicidaili.com/nn/)有一個(gè)提供免費(fèi)代理的網(wǎng)站,你可以爬下來(lái)使用,但是免費(fèi)代理通常不夠穩(wěn)定。
設(shè)置訪問(wèn)時(shí)間間隔
很多網(wǎng)站的反爬蟲(chóng)機(jī)制都設(shè)置了訪問(wèn)間隔時(shí)間,如果一個(gè)IP短時(shí)間內(nèi)超過(guò)規(guī)定次數(shù),就會(huì)進(jìn)入“冷卻光盤(pán)”,所以除了輪換IP和user_agent
您可以將訪問(wèn)間隔設(shè)置得更長(zhǎng),例如在不抓取頁(yè)面的情況下隨機(jī)休眠一段時(shí)間:
Time,random time . sleep(random . random()* 3)對(duì)于一個(gè)爬蟲(chóng)來(lái)說(shuō),這是一種更負(fù)責(zé)任的做法。
從上面我們知道爬蟲(chóng)可能會(huì)造成訪問(wèn)對(duì)方網(wǎng)站的負(fù)載壓力,所以這種防范不僅可以在一定程度上防止被屏蔽,還可以減輕對(duì)方的訪問(wèn)壓力。