1. 程式人生 > >反爬蟲技術之防止IP地址被封殺

反爬蟲技術之防止IP地址被封殺

在使用爬蟲爬取別的網站的資料的時候,如果爬取頻次過快,或者因為一些別的原因,被對方網站識別出爬蟲後,自己的IP地址就面臨著被封殺的風險。一旦IP被封殺,那麼爬蟲就再也爬取不到資料了。

那麼常見的更改爬蟲IP的方法有哪些呢?

1,使用動態IP撥號器伺服器。

動態IP撥號伺服器的IP地址是可以動態修改的。其實動態IP撥號伺服器並不是什麼高大上的伺服器,相反,屬於配置很低的一種伺服器。我們之所以使用動態IP撥號伺服器,不是看中了它的計算能力,而是能夠實現秒換IP。

動態IP撥號伺服器有一個特點,就是每次撥號都會更換一個新的IP地址。多年前家庭中的上網方式大多采用的ADSL撥號上網,也就是斷開網路後再撥號一次,外網IP就會換成另一個。

通常來講,這個IP池很大,可能有多個AB號段,IP數量基本上用不完。對於爬蟲來說,這簡直是大殺器,能夠輕鬆的解決封殺IP的限制。

使用動態IP撥號伺服器,需要付費購買。

2,使用Tor代理伺服器。

Tor(The onion router, 洋蔥路由器)是網際網路上用於保護隱私最有利的工具之一。如果我們不適用Tor,網路請求就會直接傳送給目標伺服器。

相比之下,如果我們使用tor傳送網路請求,客戶端就會選擇一條隨機路徑到伺服器。這條隨機路徑中間會經過多個Tor節點,而且使用洋蔥路由加密技術,使得任何節點都不能偷取加密資料,並且該請求的傳輸路徑難以追蹤,也查不出起點在哪。

因此,我們可以使用tor技術改變請求的IP地址,作為一種終極的防止IP封鎖的爬蟲方案。

最近在學習《Python網路爬蟲從入門到實踐》,瞭解到其中的關於反爬蟲的一些話題,做一下學習筆記。