爬蟲代理哪家強?十大付費代理詳細對比評測!


 

前言

隨着大數據時代的到來,爬蟲已經成了獲取數據的必不可少的方式,做過爬蟲的想必都深有體會,爬取的時候莫名其妙 IP 就被網站封掉了,畢竟各大網站也不想自己的數據被輕易地爬走。
對於爬蟲來說,為了解決封禁 IP 的問題,一個有效的方式就是使用代理,使用代理之后可以讓爬蟲偽裝自己的真實 IP,如果使用大量的隨機的代理進行爬取,那么網站就不知道是我們的爬蟲一直在爬取了,這樣就有效地解決了反爬的問題。
那么問題來了,使用什么代理好呢?這里指的代理一般是 HTTP 代理,主要用於數據爬取。現在打開搜索引擎一搜 HTTP 代理,免費的、付費的太多太多品牌,我們該如何選擇呢?看完這一篇文章,想必你心中就有了答案。
對於免費代理,其實想都不用想了,可用率能超過 10% 就已經是謝天謝地了。真正靠譜的代理還是需要花錢買的,那這么多家到底哪家可用率高?哪家響應速度快?哪家比較穩定?哪家性價比比較高?為此,我對市面上比較流行的多家付費代理針對可用率、爬取速度、爬取穩定性、價格、安全性、請求限制等做了詳細的評測,讓我們來一起看一下到底哪家更強!

測評范圍

免費代理

在這里我主要測試的是付費代理,免費代理可用率太低,幾乎不會超過 10%,但為了作為對比,我選取了西刺免費代理進行了測試。

付費代理

付費代理我選取了站大爺、芝麻 HTTP 代理、太陽 HTTP 代理、訊代理、快代理、蘑菇代理、阿布雲代理、全網代理、雲代理、大象代理進行了對比評測,購買了他們的各個不同級別的套餐使用同樣的網絡環境進行了測評,詳情如下:
 代理商家  套餐類型 官方網站
芝麻 HTTP 代理  默認版 http://h.zhimaruanjian.com
阿布雲代理  專業版 https://www.abuyun.com
 動態版
 經典版
 大象代理  個人版 http://www.daxiangdaili.com
 專業版
 企業版
全網代理  普通版 http://www.goubanjia.com
 動態版
 快代理  VIP 套餐 https://www.kuaidaili.com
 蘑菇代理  默認版 http://www.mogumiao.com
 太陽 HTTP 代理  默認版 http://http.taiyangruanjian.com
 訊代理  優質代理 http://www.xdaili.cn
 混播代理
 獨享代理
 雲代理  VIP 套餐 http://www.ip3366.net
 站大爺代理  普通代理 http://ip.zdaye.com
 短效優質代理
注:其中蘑菇代理、太陽 HTTP 代理、芝麻 HTTP 代理的默認版表示此網站只有這一種代理,不同套餐僅是時長區別,代理質量沒有差別。
嗯,我把上面的套餐全部買了一遍,以供下面的評測使用。

測評目標

本次測評主要分析代理的可用率、響應速度、穩定性、價格、安全性、使用頻率等因素,下面我們來一一進行說明。

可用率

可用率就是提取的這些代理中可以正常使用的比率。假如我們無法使用這個代理請求某個網站或者訪問超時,那么就代表這個代理不可用,在這里我的測試樣本大小為 500,即提取 500 個代理,看看里面可用的比率多少。

響應速度

響應速度可以用耗費時間來衡量,即計算使用這個代理請求網站一直到得到響應所耗費的時間。時間越短,證明代理的響應速度越快,這里同樣是 500 個樣本,計算時只對正常可用的代理做統計,計算耗費時間的平均值。

穩定性

由於爬蟲時我們需要使用大量代理,如果一個代理響應速度特別快,很快就能得到響應,而下一次請求使用的代理響應速度特別慢,等了三十秒才得到響應,那勢必會影響爬取效率,所以我們需要看下商家提供的這些代理穩定性怎樣,總不能這一個特別快,下一個又慢的不行。所以這里我們需要統計一下耗費時間的方差,方差越大,證明穩定性越差。

價格

價格,這個當然是需要考慮的內容,如果一個代理不論是響應速度還是穩定性都特別不錯,但是價格非常非常高,這也是不可接受的。

安全性

這的確也是需要考慮的因素,比如一旦不小心把代理提取的 API 泄露出去了,別人就肆意使用我們的 API 提取代理使用,而一直耗費的是我們的套餐。另外一旦別人通過某些手段獲取了我們的代理列表,而這些代理是沒有安全驗證的,這也會導致別人偷偷使用我們的代理。在生產環境上,這方面尤其需要注意。

使用頻率

有些代理套餐在 API 調用提取代理時有頻率限制,有的代理套餐則會限制請求頻率,這些因素都會或多或少影響爬蟲的效率,這部分因素我們也需要考慮進來。

測評標准

要做標准的測評,那就必須在標准的測評環境下進行,且盡可能排除一些雜項的干擾,如網絡波動、傳輸延遲等一系列的影響。

主機選取

由於我的個人筆記本是使用 WiFi 上網的,所以可能會有網絡波動,而且實際帶寬其實並不太好把控,因此它並不適合來做標准評測使用。評測需要在一個網絡穩定的條件下進行,而且多個代理的評測環境必須相同,在此我選擇了一台騰訊雲主機作為測試,主機配置如下:
 參數名  參數值
 操作系統
Ubuntu 16.04.1 LTS (GNU/Linux 4.4.0-53-generic x86_64)
 帶寬 5 Mbps
 核心數  2
 內存  4GB
Python 版本  3.5.2
這樣我們就可以保證一個標准統一的測試環境了。

現取現測

另外在評測時還需要遵循一個原則,那就是現取現測,即取一個測一個。現在很多付費代理網站都提供了 API 接口,我們可以一次性提取多個代理,但是這樣會導致一個問題,每個代理在提取出來的時候,商家是會盡量保證它的可用性的,但過一段時間,這個代理可能就不好用了,所以假如我們一次性提取出來了 100 個代理,但是這 100 個代理並沒有同時參與測試,后面的代理就會經歷一個的等待期,過一段時間再測這些代理的話,肯定會影響后半部分代理的有效性,所以這里我們將提取的數量統一設置成 1,即請求一次接口獲取一個代理,然后立即進行測試,這樣可以保證測試的公平性,排除了不同代理有效期的干擾。

時間計算

由於我們有一項是測試代理的響應速度,所以我們需要計算程序請求之前和得到響應之后的時間差,這里我們使用的測試 Python 庫是 requests,所以我們就計算發起請求和得到響應之間的時間差即可,時間計算方法如下所示:
 
 
 
1
2
3
4
start_time = time . time ( )
requests . get ( test_url , timeout = timeout , proxies = proxies )
end_time = time . time ( )
used_time = end_time - start_time
 
這里 used_time 就是使用代理請求的耗時,這樣測試的就僅僅是發起請求到得到響應的時間。

測試鏈接

測試時我們也需要使用一個穩定的且沒有反爬蟲的鏈接,這樣可以排除服務器的干擾,這里我們使用百度來作為測試目標。

超時限制

在測試時免不了的會遇到代理請求超時的問題,所以這里我們也需要統一一個超時時間,這里設置為 60 秒,如果使用代理請求百度,60 秒還沒有得到響應,那就視為該代理無效。

測試數量

要做測評,那么樣本不能太小,如只有十幾次測試是不能輕易下結論的,這里我選取了一個適中的測評數量 500,即每個套餐獲取 500 個代理進行測試。

測評過程

嗯,測評過程這邊主要說一下測評的代碼邏輯,首先測的時候是取一個測一個的,所以這里定義了一個 test_proxy() 方法:
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
test_url = 'https://www.baidu.com/'
timeout = 60
 
def test_proxy ( proxy ) :
     try :
         proxies = {
             'https' : 'http://' + proxy
         }
         start_time = time . time ( )
         requests . get ( test_url , timeout = timeout , proxies = proxies )
         end_time = time . time ( )
         used_time = end_time - start_time
         print ( 'Proxy Valid' , 'Used Time:' , used_time )
         return True , used_time
     except ( ProxyError , ConnectTimeout , SSLError , ReadTimeout , ConnectionError ) :
         print ( 'Proxy Invalid:' , proxy )
         return False , None
 
這里需要傳入一個參數 proxy,代表一個代理,即 IP 加端口組成的代理,然后這里使用了 requests 的 proxies 參數傳遞給 get() 方法。對於代理無效的檢測,這里判斷了 ProxyError, ConnectTimeout, SSLError, ReadTimeout, ConnectionError 這幾種異常,如果發生了這些異常統統視為代理無效,返回錯誤。如果在 timeout 60 秒內得到了響應,那么就計算其耗費時間並返回。
在主程序里,就是獲取 API 然后統計結果了,代碼如下:
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
max = 500
 
def main ( ) :
     print ( 'Testing' )
     used_time_list = [ ]
     valid_count = 0
     total_count = 0
     while True :
         flag , result = get_page ( api_url )
         if flag :
             proxy = result . strip ( )
             if is_proxy ( proxy ) :
                 total_count += 1
                 print ( 'Testing proxy' , proxy )
                 test_flag , test_result = test_proxy ( proxy = proxy )
                 if test_flag :
                     valid_count += 1
                     used_time_list . append ( test_result )
                 stats_result ( used_time_list , valid_count , total_count )
         time . sleep ( wait )
         if total_count == max :
             break
 
這里加了一些判斷,如 is_proxy() 方法判斷了獲取的是不是符合有效的代理規則,即判斷它是不是 IP 加端口的形式,這樣可以排除 API 返回一些錯誤信息的干擾。另外這里設置了 total_count 和 valid_count 變量,只有符合代理規則的代理參與了測試,這樣才算一次有效測試,total_count 加一,如果測試可用,那么 valid_count 加一並記錄耗費時間。最后調用了 stats_results 方法進行了統計:
 
 
 
1
2
3
4
5
6
7
8
9
10
11
import numpy as np
 
def stats_result ( used_time_list , valid_count , total_count ) :
     if not used_time_list or not total_count :
         return
     used_time_array = np . asarray ( used_time_list , np . float32 )
     print ( 'Total Count:' , total_count ,
           'Valid Count:' , valid_count ,
           'Valid Percent: %.2f%%' % ( valid_count * 100.0 / total_count ) ,
           'Used Time Mean:' , used_time_array . mean ( ) ,
           'Used Time Var' , used_time_array . var ( ) )
 
這里使用了 Numpy 來統計了耗費時間的均值和方差,分別反映代理的響應速度和穩定性。
嗯,就這樣,利用這個方法我對各個不同的代理套餐逐一進行了測試。

測評結果

經過測評,初步得到如下統計結果:
 代理商家  套餐類型  測試次數  有效次數  可用率  響應時間均值  響應時間方差
 芝麻 HTTP 代理  默認版  500  495  99.00%  0.916853  1.331989
阿布雲代理  專業版  500  452  90.40% 0.68770707 1.1477163
 動態版  500  494  98.80% 1.83994 6.0491614
 經典版  500  499  99.80% 0.49301904 0.25724468
 大象代理  個人版  500  238  47.60% 5.340489 78.56444
 專業版  500  284  56.80% 6.87078 105.7984
 企業版  500  259  51.80% 6.3081837 121.08402
全網代理  普通版  500  220  44.00% 5.584057 47.442596
 動態版  500  485  97.00% 2.776973 17.568045
快代理  VIP 套餐  500  178  35.60% 16.636587 221.69661
蘑菇代理  默認版  500  497  99.40% 1.0985725 9.532586
太陽 HTTP 代理  默認版  500  400  80.00% 1.2522483 12.662229
訊代理  優質代理  500  495  99.00% 1.0512681 6.4247565
 混播代理  500  494  98.80% 1.0664985 6.451699
 獨享代理  500  500  100%  0.7056521  0.35416448
 雲代理  VIP 套餐  500  489  97.80%  3.4216988  38.120296
 站大爺代理  普通代理  500  92  18.40%  5.067193 66.12128
 短效優質代理  500  488  97.60%  1.5625348 8.121197
 西刺代理  免費  500  31  6.2% 9.712833 95.09569
注:
表中的響應時間方差越大,代表穩定性越低。
阿布雲代理經典版方差較小是因為它是長時間鎖定了同一個 IP,因此極其穩定,但每秒最大請求默認 5 次。

測評分析

下面我們將從各個方面分析一下各個套餐的優劣。

可用率

通過可用率統計,我們可以發現可用率較高的代理套餐有:
 級別  套餐 描述
 第一梯隊  訊代理獨享代理、阿布雲代理經典版、蘑菇代理、芝麻 HTTP 代理、訊代理優質代理  可用率 99% 以上
 第二梯隊  阿布雲代理動態版、訊代理混播代理、雲代理、站大爺短效優質代理、全網代理動態版、阿布雲代理專業版  可用率 99% 以下,90% 以上
 第三梯隊  太陽 HTTP 代理、大象代理專業版、大象代理企業版  可用率 90% 以下,50% 以上
 第四梯隊  大象代理個人版、全網代理普通版、快代理 可用率 50% 以下,20% 以上
 第五梯隊 站大爺普通代理、西刺代理  可用率 20% 以下

響應速度

通過平均響應速度判別,我們可以發現響應速度較快的代理套餐有:
 級別  套餐  描述
 第一梯隊  阿布雲代理經典版、阿布雲代理專業版、訊代理獨享代理、芝麻 HTTP 代理 響應時間 1s 以內
 第二梯隊  訊代理優質代理、訊代理混播代理、蘑菇代理、太陽代理、站大爺短效優質代理、阿布雲代理動態版 響應時間 1s 以上,2s 以內
 第三梯隊 全網代理動態版、雲代理 響應時間 2s 以上,5s 以內
 第四梯隊 站大爺普通代理、大象代理個人版、全網代理普通版、大象代理企業版、大象代理專業版、西刺代理 響應時間 5s 以上,10s 以內
 第五梯隊 快代理 響應時間 10s 以上

穩定性

通過平均響應速度方差分析,我們可以發現穩定性較高的代理套餐有:
 級別  套餐  描述
 第一梯隊 阿布雲代理經典版、訊代理獨享代理、阿布雲代理專業版、芝麻 HTTP 代理  方差 3 以內
 第二梯隊 阿布雲代理動態版、訊代理優質代理、訊代理混播代理、站大爺短效優質代理、蘑菇代理 方差 10 以內,3 以上
 第三梯隊 太陽HTTP代理、全網代理動態版、雲代理、全網代理普通版、站大爺普通代理、大象代理個人版、西刺代理  方差 100 以內,10 以上
 第四梯隊  大象代理專業版、大象代理企業版、快代理  方差 100 以上

價格

我們可以先看一下各個套餐的價格:
 代理商家  套餐類型 價格描述  價格 URL  備注
芝麻 HTTP 代理  默認版 ¥98/周 ¥360/月 http://h.zhimaruanjian.com/newrecharge/ 另有包量套餐、長效 IP 套餐可選購,定期有優惠活動,可領免費 IP,可免費試用
阿布雲代理  專業版 ¥1/時 ¥16/天 ¥108/周 ¥429/月 https://www.abuyun.com/  每秒請求只有5個,多加每秒請求1個需要 1¥0.5/月,¥90 /年
 動態版 ¥1/時 ¥16/天 ¥108/周 ¥429/月
 經典版 ¥1/時 ¥16/天 ¥108/周 ¥429/月
 大象代理  個人版 ¥9/天 ¥98/月 http://www.daxiangdaili.com/ 好評可送時長
 專業版 ¥19/天 ¥198/月
 企業版 ¥49/天 ¥498/月
全網代理  普通版 ¥9/天 ¥35/周 ¥93/月 ¥500/年 http://www.goubanjia.com/buy/high.shtml  
 動態版 ¥10/天 ¥160/月 ¥1250/年 http://www.goubanjia.com/buy/dynamic.shtml  
 快代理  VIP 套餐 ¥20/天 ¥60/周 ¥200/月 ¥2000/年 https://www.kuaidaili.com/pricing 有普通、VIP、SVIP、專業版可選
 蘑菇代理  默認版 ¥6/天 ¥169/月 ¥1699/年 http://www.mogumiao.com/buy 另有包量套餐可選購,可免費試用
 太陽 HTTP 代理  默認版 ¥60/周 ¥198/月 ¥498/季 ¥1590/年 http://http.taiyangruanjian.com/newrecharge/ 另有保量套餐可選購,可領免費 IP,可免費試用
 訊代理  優質代理 ¥9/天 ¥210/月 ¥2100/年 http://www.xdaili.cn/buyproxy  可免費試用
 混播代理 ¥29/天 ¥729/月 ¥6999/年
 獨享代理 ¥9/天 ¥210/月 ¥2100/年
 雲代理  VIP 套餐 ¥10/天 ¥120/月 ¥599/年 http://www.ip3366.net/pricing/  另有普通套餐可選
 站大爺代理  普通代理 ¥8/天 ¥80/月 ¥720/年 http://ip.zdaye.com/buy.html  另有私密代理可選
 短效優質代理 ¥17/天 ¥475/月 ¥4569/年 http://ip.zdaye.com/ShortProxy.html
按照包月的價格,我們可以統一對比如下:
 級別  套餐  描述
 第一梯隊  訊代理混播代理、大象代理企業版、站大爺短效優質代理、阿布雲代理  包月大於 400
 第二梯隊  芝麻 HTTP 代理  包月小於 400,大於 300
 第三梯隊  訊代理優質代理、訊代理獨享代理、快代理  包月小於 300,大於 200
 第四梯隊  太陽 HTTP 代理、大象代理專業版、蘑菇代理、全網代理動態版、雲代理  包月小於 200,大於 100
 第五梯隊  大象代理個人版、全網代理、站大爺普通代理  包月小於 100

安全性

對於安全性,此處主要考慮提取 API 是否有訪問驗證,使用代理時是否有訪問驗證,即可以通過設置白名單來控制哪些可以使用。
其中只有芝麻 HTTP 代理、太陽 HTTP 代理默認使用了白名單限制,即只有將使用 IP 添加到白名單才可以使用,可以有效控制使用權限。
另外阿布雲代理提供了隧道代理驗證,只有成功配置了用戶名和密碼才可以正常使用。
所以在此歸納如下:
 級別  套餐  描述
 第一梯隊 芝麻 HTTP 代理、太陽 HTTP 代理、阿布雲代理 默認使用了白名單控制或隧道代理驗證
 第二梯隊  其他 可直接使用

調取頻率

不同的接口具有不同的 API 調用頻率限制,歸納如下:
 代理商家  套餐類型 調取頻率限制
芝麻 HTTP 代理  默認版 1秒
阿布雲代理  專業版 無需獲取
 動態版 無需獲取
 經典版 無需獲取
 大象代理  個人版 1秒
 專業版 1秒
 企業版 無限制
全網代理  普通版 無限制
 動態版 100毫秒
快代理  VIP 套餐 200毫秒
蘑菇代理  默認版 5秒
太陽 HTTP 代理  默認版 1秒
訊代理  優質代理 5秒
 混播代理 10秒
 獨享代理 15秒
 雲代理  VIP 套餐 無限制
 站大爺代理  普通代理 3秒
 短效優質代理 10秒
 西刺代理  免費 無限制
在此可以簡單總結如下:
級別  套餐  描述
 第一梯隊  雲代理、全網代理普通版、大象代理企業版、西刺代理、阿布雲(調取無限制,請求默認最大 1 秒 5 請求)  無限制
 第二梯隊  全網代理動態版、快代理  小於 1s
 第三梯隊  大象代理個人版、大象代理專業版、芝麻 HTTP 代理、太陽 HTTP 代理、站大爺普通代理、蘑菇代理、訊代理優質代理  1s – 5s
 第四梯隊  訊代理混播代理、訊代理獨享代理、站大爺短效優質代理  大於 5s

特色功能

除了常規的測試之外,我這邊還選取了某些套餐的與眾不同之處進行說明,這些特點有的算是缺點,有的算是優點,現列舉如下:
 代理  描述
 阿布雲代理  使用隧道技術實現,代理不能直接拿到,必須配置訪問認證,默認 1 秒只能支持 5 個請求,如需更多需要付費。
 訊代理  獨享代理撥號時間略長,可用主機少,容易出現撥號失敗現象,單個代理有效時長可控。
 芝麻 HTTP 代理  必須要設置白名單才可以使用,后台可控,使用 API 提取代理不扣費,使用時才扣費。

測評綜合

分項了解了各個代理套餐的可用率、響應速度、穩定性、性價比、安全性等內容之后,最后做一下總結:
 代理商家  套餐類型 可用率  可用率評價 響應時間均值 響應速度評價 響應時間方差 穩定性 包月價格 價格評價 安全性 訪問頻率限制 調取頻率限制 推薦指數
芝麻 HTTP 代理  默認版 99% 極高 0.916853 極快 1.331989 極好 360 較高 1 秒 ★★★★★
阿布雲代理  專業版 90.4% 0.68770707 極快 1.1477163 極好 429 無需獲取 ★★★☆
 動態版 98.8% 1.83994 6.0491614 429 無需獲取 ★★★★
 經典版 99.8% 極高 0.49301904 極快 0.25724468 極好 429 無需獲取 ★★★★
 大象代理  個人版 47.6% 5.340489 78.56444 一般 98 1 秒 ★★
 專業版 56.8% 一般 6.87078 105.7984 198 較低 1 秒 ★☆
 企業版 51.8% 一般 6.3081837 121.08402 498 無限制
全網代理  普通版 44% 5.584057 47.442596 一般 93 無限制 ★★
 動態版 97% 2.776973 一般 17.568045 一般 160 較低 100毫秒 ★★★
快代理  VIP 套餐 35.6% 一般 16.636587 極慢 221.69661 200 200毫秒
蘑菇代理  默認版 99.4% 極高 1.0985725 9.532586 169 較低 5秒 ★★★★☆
太陽 HTTP 代理  默認版 80% 一般 1.2522483 12.662229 一般 198 較低 1秒 ★★★★
訊代理  優質代理 99% 極高 1.0512681 6.4247565 210 5秒 ★★★★☆
 混播代理 98.8% 1.0664985 6.451699 729 10秒 ★★★☆
 獨享代理 100% 極高 0.7056521 極快 0.35416448 極好 210 15秒 ★★★★☆
 雲代理  VIP 套餐 97.8% 3.4216988 一般 38.120296 一般 120 較低 無限制 ★★★☆
 站大爺代理  普通代理 18.4% 極低 5.067193 66.12128 一般 80 3秒 ★☆
 短效優質代理 97.6% 1.5625348 8.121197 475 10秒 ★★★☆
 西刺代理  免費 6.2% 極低 9.712833 95.09569 一般 0 免費 無限制
所以在綜合來看比較推薦的有:芝麻代理、訊代理、阿布雲代理三家,詳細的對比結果可以參照表格。
 作者: 靜覓


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM