程序猿对:飞猪IP爬虫代理分析评测

媒介

跟着年夜数据时代的到来,爬虫已经当作了获取数据的必不成少的体例,做过爬虫的想必都深有体味,爬取的时辰莫名其妙 IP 就被网站封失落了,究竟结果各年夜网站也不想本身的数据被等闲地爬走。

对于爬虫来说,为领会决封禁 IP 的问题,一个有用的体例就是利用代办署理,利用代办署理之后可以让爬虫伪装本身的真实 IP,若是利用年夜量的随机的代办署理进行爬取,那么网站就不知道是我们的爬虫一向在爬取了,如许就有用地解决了反爬的问题。

那么问题来了,利用什么代办署理好呢?这里指的代办署理一般是 HTTP 代办署理,本家儿要用于数据爬取。此刻打开搜刮引擎一搜 HTTP 代办署理,免费的、付费的太多太多品牌,我们该若何选择呢?看完这一篇文章,想必你心中就有了谜底。

对于免费代办署理,其实想都不消想了,可用率能跨越 10% 就已经是谢天谢地了。真正靠谱的代办署理仍是需要花钱买的,那这么多家到底哪家可用率高?哪家响应速度快?哪家比力不变?哪家性价比比力高?为此,我对市道上比力风行的多家付费代办署理针对可用率、爬取速度、爬取不变性、价钱、平安性、请求限制等做了具体的评测,让我们来一路看一下到底哪家更强!

东西/原料

  • 测试对象:以飞猪IP代办署理为例

测评规模(免费版和付条目费)

  1. 1

    免费代办署理

    在这里我本家儿要测试的是付费代办署理,免费代办署理可用率太低,几乎不会跨越 10%

  2. 2

    付费代办署理

    付费代办署理我以飞猪IP爬虫代办署理,进行了评测,采办了分歧级此外套餐利用同样的收集情况进行了测评,详情如

飞猪IP代办署理评测方针

  1. 1

    本次测评本家儿要阐发代办署理的可用率、响应速度、不变性、价钱、平安性、利用频率等身分,下面我们来一一进行申明。

  2. 2

    可用率

    可用率就是提取的这些代办署理中可以正常利用的比率。假如我们无法利用这个代办署理请求某个网站或者拜候超时,那么就代表这个代办署理不成用,在这里我的测试样本巨细为 500,即提取 500 个代办署理,看看里面可用的比率几多。

  3. 3

    响应速度

    响应速度可以用花费时候来权衡,即计较利用这个代办署理请求网站一向到获得响应所花费的时候。时候越短,证实代办署理的响应速度越快,这里同样是 500 个样本,计较时只对正常可用的代办署理做统计,计较花费时候的平均值。

  4. 4

    不变性

    因为爬虫时我们需要利用年夜量代办署理,若是一个代办署理响应速度出格快,很快就能获得响应,而下一次请求利用的代办署理响应速度出格慢,等了三十秒才获得响应,那势必会影响爬取效率,所以我们需要看下商家供给的这些代办署理不变性如何,总不克不及这一个出格快,下一个又慢的不可。所以这里我们需要统计一下花费时候的方差,方差越年夜,证实不变性越差。

  5. 5

    价钱

    价钱,这个当然是需要考虑的内容,若是一个代办署理非论是响应速度仍是不变性都出格不错,可是价钱很是很是高,这也是不成接管的。

  6. 6

    平安性

    这简直也是需要考虑的身分,好比一旦不小心把代办署理提取的 API 泄露出去了,别人就肆意利用我们的 API 提代替理利用,而一向花费的是我们的套餐。别的一旦别人经由过程某些手段获取了我们的代办署理列表,而这些代办署理是没有平安验证的,这也会导致别人偷偷利用我们的代办署理。在出产情况上,这方面尤其需要注重。

  7. 7

    利用频率

    有些代办署理套餐在 API 挪用提代替理时有频率限制,有的代办署理套餐则会限制请求频率,这些身分城市或多或少影响爬虫的效率,这部门身分我们也需要考虑进来。

  8. 8

    测评尺度

    要做尺度的测评,那就必需在尺度的测评情况下进行,且尽可能解除一些杂项的干扰,如收集波动、传输延迟等一系列的影响。

  9. 9

    本家儿机拔取

    因为我的小我笔记本是利用 WiFi 上彀的,所以可能会有收集波动,并且现实带宽其实并不太好把控,是以它并不适合来做尺度评测利用。评测需要在一个收集不变的前提下进行,并且多个代办署理的评测情况必需不异,在此我选择了一台腾讯云本家儿机作为测试,本家儿机设置装备摆设如下:

    如许我们就可以包管一个尺度同一的测试情况了。

  10. 10

    现取现测

    别的在评测时还需要遵循一个原则,那就是现取现测,即取一个测一个。此刻良多付费代办署理网站都供给了 API 接口,我们可以一次性提取多个代办署理,可是如许会导致一个问题,每个代办署理在提掏出来的时辰,商家是会尽量包管它的可用性的,但过一段时候,这个代办署理可能就欠好用了,所以假如我们一次性提掏出来了 100 个代办署理,可是这 100 个代办署理并没有同时介入测试,后面的代办署理就会履历一个的期待期,过一段时候再测这些代办署理的话,必定会影响后半部门代办署理的有用性,所以这里我们将提取的数目同一设置当作 1,即请求一次接口获取一个代办署理,然后当即进行测试,如许可以包管测试的公允性,解除了分歧代办署理有用期的干扰。

  11. 11

    时候计较

    因为我们有一项是测试代办署理的响应速度,所以我们需要计较法式请求之前和获得响应之后的时候差,这里我们利用的测试 Python 库是 requests,所以我们就计较倡议请乞降获得响应之间的时候差即可,时候计较方式如下所示:

    这里 used_time 就是利用代办署理请求的耗时,如许测试的就仅仅是倡议请求到获得响应的时候。

  12. 12

    超时限制

    在测试时免不了的会碰到代办署理请求超时的问题,所以这里我们也需要同一一个超不时间,这里设置为 60 秒,若是利用代办署理请求百度,60 秒还没有获得响应,那就视为该代办署理无效。

    测试数目

    要做测评,那么样本不克不及太小,如只有十几回测试是不克不及等闲下结论的,这里我拔取了一个适中的测评数目 500,即每个套餐获取 500 个代办署理进行测试。

  13. 13

    测评过程

    嗯,测评过程这边本家儿要说一下测评的代码逻辑,起首测的时辰是取一个测一个的,所以这里界说了一个 test_proxy() 方式:

  14. 14

    这里需要传入一个参数 proxy,代表一个代办署理,即 IP 加端口构成的代办署理,然后这里利用了 requests 的 proxies 参数传递给 get() 方式。对于代办署理无效的检测,这里判定了 ProxyError, ConnectTimeout, SSLError, ReadTimeout, ConnectionError 这几种异常,若是发生了这些异常十足视为代办署理无效,返回错误。若是在 timeout 60 秒内获得了响应,那么就计较其花费时候并返回。

    在本家儿法式里,就是获取 API 然后统计成果了,代码如下:

  15. 15

    测评得出的结论

    用飞猪IP代办署理,进行收集爬虫,经由过程利用率很高,响应速度快,并且不变,价钱廉价,平安性也高,值得大师利用,保举指数5颗星。

  • 发表于 2018-11-28 00:00
  • 阅读 ( 960 )
  • 分类:其他类型

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
admin
admin

0 篇文章

作家榜 »

  1. xiaonan123 189 文章
  2. 汤依妹儿 97 文章
  3. luogf229 46 文章
  4. jy02406749 45 文章
  5. 小凡 34 文章
  6. Daisy萌 32 文章
  7. 我的QQ3117863681 24 文章
  8. 华志健 23 文章

联系我们:uytrv@hotmail.com 问答工具