您的位置:首页 > 新闻资讯 >文章内容
IP代理池的组成以及搭建过程中遇到的问题
来源:互联网 作者:admin 时间:2019-04-04 18:10:50

我们搭建IP代理池,一般都是选择免费的,不过免费的采集也简单,无非就是:访问页面页面 —> 正则/xpath提取 —> 保存。下面我们来看看IP代理池的组成以及遇到的问题。

IP代理池由四部分组成:

  • ProxyApi:用flask写的接口,功能是给爬虫提供get/delete/refresh等接口,方便爬虫直接使用。

  • ProxyGetter: 爬取免费代理

  • Schedule:调度。定时检测DB中的代理可用性,删除不可用的代理。同时也会主动通过ProxyGetter去获取最新代理。看代码好像是5分钟跑一次ProxyGetter。

  • DB:存储模块。使用SSDB,或者redis做可用代理队列的存储。



IP代理池的组成以及搭建过程中遇到的问题

会遇到哪些比较常见的问题:

由于整个项目的校验机制延时比较长,代码如下:

IP代理池的组成以及搭建过程中遇到的问题

每分钟校验一次可用代理,10分钟爬一次免费网站的代理。我个人感觉校验代理的世界太长了,可以看看我的测试。

跑了一天,代理池记录的代理如图

IP代理池的组成以及搭建过程中遇到的问题


我特别写的校验机制,循环20次校验拿到的代理可用数,如图:

IP代理池的组成以及搭建过程中遇到的问题


第一次校验通过24个代理可用,第二次只有18,中间耗时4s

IP代理池的组成以及搭建过程中遇到的问题


20次校验后,得到的可用代理只有13个

IP代理池的组成以及搭建过程中遇到的问题


由于项目校验可用代理延时为1分钟,最初可用代理76个。当我使用脚本校验20次后,可用的只有13个。意味着在这段时间内,可用的稳定的代理只有13/76,不到20%的稳定率。

在实际使用中,不管使用何种代理,校验都是必不可少的,但是不到20%的代理可用,这会对爬虫造成巨大的干扰,至少在我看来,在这种机制下,校验的IP还具有很大的提升空间。

解决问题的思路:

由于是爬取其他网站的活动代理,我们并不在乎我们单位时间的请求数,只需要在当下的代理可用即可。解决核心:76个IP其实还不如5个较为稳定的IP,我们如何让这76个IP变成5个可用的稳定的IP成为这个项目可以应用在实际工程中的核心。

总的来说通过代理绕过很多网站的确是很好的办法,但是高端的反爬虫越来越依托于秘钥校验等等,硬实力越来越重要。代理永远都只是一个工具,爬虫工程师的核心永远都是自己的对抗能力。不过找代理,可以找机灵代理。


相关文章内容简介
推荐阅读
  • 26 2019-03
    http代理服务器技术解析

    现在大部分的http代理服务器都是云服务器,而且它是结合虚拟技术中的一大变革,而且它在一定程度上解决了传统服务器的成本高的问题,最重要的是像现在的服务器大部分在运行的性能以及

  • 10 2019-08
    代理IP的用处和功能,怎么验证代理IP是否有效

    代理IP的用处和功能,怎么验证代理IP是否有效?代理IP即代理服务器(Proxy Server)是一种重要的安全功能,它的工作主要在开放系统互联(OSI)模型的对话层,从而起到防火墙的作用。代理服务器

  • 25 2019-04
    https代理ip是怎么来的?

    https代理ip是怎么来的?最过于笼统的回答就是从网上来的,我们在网上一搜就找到了,很多代理IP资源的,而且看起来都是免费的,获得这些https代理ip很简单的,还不用花钱。

  • 25 2019-06
    使用最新代理IP有什么好处

    使用最新代理IP有什么好处?大部分网络用户都是使用固定的ip地址,如果要使用动态的ip,还需要使用代理IP,最好是最新代理IP,这样质量更高。那么使用最新代理IP有什么好处呢?

  • 06 2019-04
    代理类型:转发和反向的不同

    在工作和生活中,也会使用到代理,或者有时候用到代理,其实你也不知道的。就是访问一些资源,直接访问不了,就可以通过代理去间接访问的。

  • 03 2019-12
    Scrapy下载器中间件设置代理IP步骤

    如何在Scrapy下载器中间件实现随机请求头以及设置代理IP使用?要实现这一操作,我们总共需要完成3个步骤,下面跟着机灵代理来一起学习吧。

在线咨询
大客户经理
大客户经理
1829380381
13316264505

大客户经理微信

微信公众号

微信公众号

回到顶部