您的位置:首页 > 新闻资讯 >文章内容
怎么提高代理IP资源的使用降低消耗?
来源:互联网 作者:admin 时间:2019-06-13 11:30:49

  怎么提高代理IP资源的使用降低消耗?由于IP资源是有限的,目前尚不能肆意的使用,而且使用代理IP资源是需要花钱的,那么能不能提高一些使用效率,降低IP资源的损耗,从而降低成本呢?可以研究下:


  方案一:先提取大量IP导入本地数据库,从数据库里面取IP,大概逻辑如下:


  1、在数据库里面建一个表,写一个导入脚本,每分钟请求多少次API(咨询代理IP服务商建议),把IP列表导入到数据库里面。


  2、在数据库里面记录好导入时间、IP、Port、过期时间、IP可用状态等字段;


  3、写一个抓取脚本,抓取脚本从数据库里面读取可用IP,每个进程从数据库获取一个IP进行使用。


  4、执行抓取,对结果进行判断,处理cookie等,只要出现验证码或者失败就放弃这个IP,重新换一个IP。


  这种方案有效的避开了代理服务器资源的消耗,有效的分配代理IP的使用,更加的高效和稳定,保障了爬虫工作的持久性和稳定性。


怎么提高代理IP资源的使用降低消耗?


  方案二:每个进程从接口API中随机取一个IP来使用,失败则再调用API获取一个IP,大概逻辑如下:


  1、每个进程(或线程),从接口随机取回一个IP来,用这个IP去访问资源。


  2、如果访问成功,则继续抓下一条。


  3、如果失败了(比如超时、出现验证码等),再从接口随机取一个IP,继续尝试。


  方案缺点:调用API获取IP的行为非常频繁,会对代理服务器造成非常大的压力,影响API接口稳定,可能会被限制提取。这种方案也不适合,不能持久稳定的运行。


  方案三、每个进程从接口API中随机取一个IP列表(比如一次提取100个IP)来循环使用,失败则再调用API获取,大概逻辑如下:


  1、每个进程(或线程),从接口随机取回一批IP回来,循环尝试IP列表去抓取数据。


  2、如果访问成功,则继续抓取下一条。


  3、如果失败了(比如超时、出现验证码等),再从接口取一批IP,继续尝试。


  方案缺点:每个IP都是有有效期的,如果提取了100个,当使用了第10个的时候,可能后面的大部分都失效了。如果你设置HTTP请求的时候连接时间超时为3秒,读取时间超时为5秒,那你将会有可能浪费3-8秒的时间,说不定这3-8秒已经可以抓取几十次了。


  没有代理IP,爬虫寸步难行,但也不能过于浪费,那么怎么提高代理IP资源的使用降低消耗?从上面的三种方案分析,推荐使用第一种的。想找个高效稳定的代理IP,推荐机灵代理,如果有了优质代理IP,并优化方案,合理分配资源,更能提高工作效率,更高效更快速更稳定的进行爬虫工作。


相关文章内容简介
推荐阅读
  • 29 2019-06
    代理IP就能保证多开不被发现吗?

    代理IP就能保证多开不被发现吗?游戏多开,或者营销账号多开,这是很正常的。以前在使用电脑完游戏的时候,很多游戏都支持双开或者是多开,换成手机就不一样了,手机屏幕就小,还要切

  • 26 2019-12
    缓冲功能是代理ip​重要一环!

    缓冲功能是代理ip​重要一环!大多数服务器代理都具有缓冲功能,例如具有较大存储空间的大型缓存。它不断地将新获取的数据存储到自己的计算机内存中。如果计算机浏览器请求的数据已存在

  • 30 2020-06
    为什么没有移动代理ip

    关于代理ip中为什么移动的资源非常少,大部分是的ip资源都是联通和电信两大运营商?大家都知道中国三大运营商,移动,电信,联通,那么我们在使用代理ip时移动的却非常少?

  • 19 2019-04
    代理IP好不好用主要还是看个人需求

    代理IP好不好用主要还是看个人需求,为什么这么说呢?如果单纯从代理IP的质量和流水来讲,这些商家的产品自然是可以分为好几个档次的,但是每个人的项目是不同的,对代理IP的需求也是不

  • 27 2019-05
    选用代理IP千万不要以价格为准

    选用代理IP千万不要以价格为准,这是为什么呢?很多朋友在购物时都是以价格为主要因素,就拿代理IP来说,有免费的就不用收费的,有便宜的就不用更贵的。这样虽然降低了成本,但同时也

  • 23 2019-10
    代理服务器的上网速度快吗?

    用代理服务器上网,跟用普通服务器上网的速度有区别吗?

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

大客户经理微信

微信公众号

微信公众号

回到顶部