首页 > 其他分享 >巨量代理代理IP测试,最新代理IP质量测试

巨量代理代理IP测试,最新代理IP质量测试

时间:2023-09-27 11:35:54浏览次数:19  
标签:ip HTTP IP 代理 测试 time size

在当今互联网大数据时代,数据采集日益发展,HTTP代理在其中扮演着重要的角色。和其他产品一样,在使用HTTP代理的时候我们也会遇到诸如:稳定性、匿名程度、响应速度、IP池可用率等问题,如何对HTTP代理进行测试,才能满足我们的需求?

目前市面上很多HTTP代理都有提供试用,购买之前大部分人都会试用,但是我们很经常看到,很多uu在互动社区评判HTTP代理服务提供商提供的产品购买后使用效果不尽如人意。具体如何,真的很难让人辩驳。

这次我购买了巨量代理进行测试供大家参考。那一起看看测试结果吧!


1.测试HTTP代理的注意事项

在测试之前,我们需要注意的是:

  • 测试环境应该符合实际应用环境
  • 测试频率要符合我们日常做数据采集的使用习惯
  • 测试IP的节点范围要广
  • 不同应用场景下的不同需求,需要选择适合的测试方法和指标


 2.HTTP代理测试项目

无论测试哪家HTTP代理,逃不开这几项:可用率、响应速度、稳定性、匿名度、安全性测试,以此来全面评估这家HTTP代理的质量。

  • 响应速度

通过测量HTTP代理与目标服务器之间的响应时间,评估HTTP代理的连接速度。在测试的时候,可以统计一下所有的时间,然后测算平均响应时间。如果这个HTTP代理能够更快地传输请求和接收响应,证明这个HTTP代理速度越快。

  • 可用率

一个可用性高的HTTP代理意味着它在大部分时间内都能正常工作,并且能够顺利传递请求和响应。我这设置成30秒,意思就是使用这个HTTP代理访问网站超过30秒还是得不到响应,就默认为这个HTTP代理无效了。

假设我们一次性提取1000个HTTP代理,如果这1000个HTTP代理在我们使用的时候,有50个超过30秒得到不到响应/无法传递请求,则认为这个可用率为(1000-50)➗1000=95%。

  • 稳定性

在数据抓取的时候,我们会用到大量的HTTP代理,一个稳定的HTTP代理能够长时间保持连接,并且不会频繁断开或出现连接错误,才能有效助力我们数据抓取。

  • 带宽

对于大部分的用户来说,HTTP代理的带宽高低也很影响使用体验,而影响HTTP代理的带宽高低的因素蛮多的,如:HTTP代理的使用人数、厂商对HTTP代理带宽的限制、代理服务器的性能等。


3.测评环境

良好的测试环境,需要在稳定的网络环境下测试,以及,至少跑得动的设备,手动加狗头。

这次测评,我是使用 python 30个线程池进行多线程测试,其中电脑配置如下:


巨量代理代理IP测试,最新代理IP质量测试_IP




4.测试链接

依然是我们的度同学


5.测试数量

基于概率,选择提取1000个HTTP代理进行测试。


巨量代理代理IP测试,最新代理IP质量测试_IP_02





6.测试过程

这次,我把响应速度和可用率结合在一起,测试巨量代理对百度站点的连通性和请求延迟。

  • 有效性+延迟部分代码如下:
# 测试代理ip有效性核心代码
def test_proxy_usability(proxy_ip,thread_id):
    target_url = 'http://www.baidu.com'
    headers = {
        "User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36"
    }
    proxies = {
        'http': f'http://{proxy_ip}',
        'https': f'http://{proxy_ip}'
    }
    try:
        status = "失败"
        resp = session.get(target_url,headers=headers, proxies=proxies, timeout=5)
        if resp.status_code == 200:
            status = "成功"
        else:
            pass
    except Exception as e:
        pass

状态码‘200’就是访问成功,证明这个HTTP代理是有效的。

测试运行如下:

巨量代理代理IP测试,最新代理IP质量测试_HTTP_03

巨量代理代理IP测试,最新代理IP质量测试_HTTP_04


  • 稳定性:利用平均响应速度方差分析,我们可以发现稳定性如何较高。

计算公式如下:

巨量代理代理IP测试,最新代理IP质量测试_sed_05


简单来说,excel的里面的方差计算公式VAR()可以帮助我们秒计算。善用excel~


  • 带宽测试部分代码如下:
#测试带宽核心代码
def test_proxy_bandwidth(auth_key,ip,proxies,thread_id,source_url):
    res = {
        "thread_id":thread_id,
        "ip":ip.replace('\n',''),
        "target_url":source_url,
    }
    file_size = 10 * 1024 * 1024  # 10 MB
    start_time = time.time()
    downloaded_size = 0
    try:
        response = requests.get(source_url, proxies=proxies, stream=True, timeout=30)
        dirname = f"./{auth_key}_{ip}"
        with open(f'{dirname}', 'wb') as f:
            for chunk in response.iter_content(chunk_size=8192):
                f.write(chunk)
                downloaded_size += len(chunk)
                f.flush()
                if downloaded_size >= file_size:
                    break

        elapsed_time = time.time() - start_time
        download_speed = downloaded_size / elapsed_time / 1024   # KB/s

    except Exception as e:
        elapsed_time = time.time() - start_time
        download_speed = downloaded_size / elapsed_time / 1024  # MB/s

这里是下载10M文件,记录测试网速。

测试运行如下:

巨量代理代理IP测试,最新代理IP质量测试_HTTP_06




7.巨量代理HTTP代理测试结果


巨量代理代理IP测试,最新代理IP质量测试_IP_07

u1s1,个人不是很喜欢余额这种方式,虽然有赠送,但是实际使用中无法把握好IP的数量,如果还需要购买一部分,但是面额不多不少很是尴尬,充多了放那心里不舒服,充少了送的少也不舒服,但是目前这么测评下来发现还蛮多家是这种套路的。

巨量代理代理IP测试,最新代理IP质量测试_sed_08

是哪家带起来的风气?我发现好几家都延迟都直接写≤10ms?实际上仅仅只是用度娘测,出来的响应速度都完全没有这么快,盲目追求极值,夸大宣传不可取。

不知是否是我购买的是新出的不限量套餐,测试的成功率已经低于90%了,有点无言以对,说好的99.9%可用率在哪里?还是这新出的不包含在内?

巨量代理代理IP测试,最新代理IP质量测试_sed_09

同我们的优秀学生青果网络最终各项测试数值相比,青果网络在HTTP代理性能方面表现更加优异,价格更贴合人民群众的需求。


巨量代理代理IP测试,最新代理IP质量测试_HTTP_10


高稳定、高可靠、高带宽、高可用率、高并发……

还有什么是不高的?!

噢,是他们的价格,想了解他们价格的可以自己去看他们的网站,真的惊了。

巨量代理代理IP测试,最新代理IP质量测试_sed_11

很多uu就会提出疑问,为什么青果网络能做到性能优异的同时,把价格给打下来?毕竟HTTP代理服务器日常运维、人员配比也需要成本?带着这个疑惑,我翻遍了青果网络的网站,发现他们原来就是IDC出身,自带设备和开发技术的优势,整体而言会比那些HTTP代理的二道贩子更有底气和实力,所以会更推荐青果网络。

巨量代理代理IP测试,最新代理IP质量测试_sed_12

希望这篇测试文章,能够帮到那些在观望HTTP代理哪家强的人。

标签:ip,HTTP,IP,代理,测试,time,size
From: https://blog.51cto.com/u_15889524/7621978

相关文章

  • 北上广深科技项目验收测试报告标准是什么?
    ​科技项目验收测试一、科技项目验收是什么?科技项目验收是指以科学研究和技术开发为内容而单独立项的项目,其目的在于解决经济和社会发展中出现的科学技术问题。不同的科技项目,根据其性质、实施范围、运作特点有不同的分类,项目的主管单位在项目组申请结题以后组织验收的步骤。......
  • 测试人员快速上手Django指南
    序言作为一个测试人员如果你有以下疑问,那么这篇文章将对你有很大帮助!1.网站的业务功能是如何实现的?参考章节:视图配置-实现网站业务功能2.服务器如何解析浏览器中的url?参考章节URL配置-提供url链接3.浏览器中的网页是如何展现给大家的?参考章节:模板-html页面的展示4.服务器如何与数据......
  • 自动化测试中自定义断言的实现方法
    断言定义熟悉单元测试的同学都知道在测试用例中,执行完测试用例后,通过断言(assert)判断测试结果是pass还是fail。不同的单元测试框架都提供了断言机制,我们这里以python为例进行说明。Python中的断言类型丰富,最常用的是基础断言和集合断言。基础断言包括的核心方法如下所示,主要功能是对......
  • 一张图搞定技术型测试工程师的进阶之路
    话不多说,一张图搞定!!! ......
  • 一文搞定单元测试核心概念
    基础概念单元测试(unittesting),是指对软件中的最小可测试单元进行检查和验证,这里的最小可测试单元通常是指函数或者类。单元测试是即所谓的白盒测试,一般由开发人员负责测试,因为开发人员知道被测试的软件如何完成功能和完成什么样的功能。我们熟知的Junit、TestNG、unittest、pytest就......
  • 测试驱动技术(TDD)系列之3:详解Java数组
    在前面的文章中我介绍了如何通过junit4和TestNG实现参数化,这两种架构都通过二维数组来实现参数化,在这里我就给大家详细的介绍一下java数组。Junit4定义参数化数据,代码如下:publicstaticCollectionprepareData(){Object[][]object={{1,2,3},{0,2,2},{0,3,3}};returnArrays.as......
  • 测试驱动技术(TDD)系列之2:详解TestNG参数化
    上一篇文章介绍了测试驱动的相关概念,并以junit4为例,带大家了解如何在测试框架中实现测试驱动。详情:测试驱动技术(TDD)系列之1:一文带你上手测试数据驱动大家会发现Junit4在同一个测试类中实现多组数据的数据驱动,不是很方便,需要我们自己解决!我也说过在TestNG中这个问题很容易搞定!给自己......
  • 测试驱动技术(TDD)系列之1:一文带你上手测试数据驱动
    数据驱动的意义数据驱动,指在自动化测试中处理测试数据的方式。通常测试数据与功能函数分离,存储在功能函数的外部位置。在自动化测试运行时,数据驱动框架会读取数据源中的数据,把数据作为参数传递到功能函数中,并会根据数据的条数多次运行同一个功能函数。数据驱动的数据源可以是函数外......
  • 接口测试系列文章5——使用flask五分钟轻松学会搭建mock server
    mockServer做过接口测试的同学一定听说过mockServer,大家会觉得其很神秘,很高大上!mockServer出现的原因是现今的业务系统很少有孤立存在的,它们或多或少需要使用兄弟团队或是其他公司提供的服务,这给我们的联调和测试造成了麻烦。于是就有了解决方案——搭建一个临时的server,模拟那......
  • 有效使用fiddler过滤请求提升测试效率
    我们在fiddler抓包时通常发现抓包中的请求众多,那么如何有效的进行抓包操作,提高测试效率呢?直接上干货!切换到Filter页面。1.对host的过滤,设置如下:2.对请求响应类型的过滤,比如不显示:css,js,jpg或者png文件,设置如下: 3.对请求响应值的过滤,设置如下: 设置成功后,进行百度网站的相关操作,......