您的位置:首页 > 新闻资讯 >文章内容
爬虫加IP代理能提高爬取速度,但为何还要加延时呢?
来源:互联网 作者:admin 时间:2019-04-11 13:57:51

爬虫加IP代理能提高爬取速度,但为何还要加延时呢?爬虫加IP代理,这是再正常不过的了。一些比较好的网站都会有设反爬的,主要是为了数据安全性和保持自身的核心竞争力,防止别人对核心数据进行采集。


这些网站是怎么识别对方是爬虫还是人的呢?其中一个方法是IP识别,当同个IP在一段时间内请求明显高于人访问网页的速度时,会判定为爬虫请求从而对该请求的IP进行短期或长期封杀。


这对爬虫的杀伤力非常大,因为很多数据结论越早获得越有价值,这种封IP的方法,可以延迟对方获取数据的时间。但这也仅是对普通的爬虫有效。


一旦爬虫加IP代理,就能使用代理来绕过对IP的监控或封杀。在网上能找到一些提供免费代理IP的平台,不过亲测极其不稳定,通常100个里只有个别能用。


所以真正的想用IP代理来做爬虫,还是找付费的比较好。通常爬虫用途可以买动态IP,平台提供一个API,每次刷新请求会得到一个或一堆有效期比较短的IP,然后从这些IP里挑选来代理请求,失效时重新生成可用的IP即可。


我写的爬虫是node里跑的,这里不得不提的是,在js里非常流行的axios请求库亲测并不能实现代理请求(也许是我姿势不对),参考网上教程需要使用request这个请求库(然而并不好用,API并不是流行的Promise方式)


所以我在逻辑代码里是这样实现的,首先封装一个请求函数,以下是核心示例代码:


爬虫加IP代理能提高爬取速度,但为何还要加延时呢?

上面封装过后的请求函数就暴露了一个统一的request方法,使用时候只需要request(url)即可。


从代码里也可以看到:当代理有效时会用代理,当代理无效、超时或其他任何错误时会返回正常的请求,这也是降级保障了爬虫代码的健壮性。


在使用IP代理时,超时时间是个需要不断调整的设置。超时太短了会导致代理不可用的概率提高,而超时太长则会影响整个爬虫的速度。


比如一个项目,不使用代理时跑完需要4个小时,而如果使用代理,每次请求的时间就加长了,在设置2000毫秒的超时下,整个任务跑下来需要翻2倍的时间。


了解到这里,大家也就清楚爬虫加IP代理能提高爬取速度,但为何还要加延时呢?IP代理能突破IP限制,自然是可以提高爬虫的速度,不过如果不设置一定的延时,过快的访问频率照样会暴露自己。



相关文章内容简介
推荐阅读
  • 02 2020-03
    ip加速器能突破网络限制吗

    动态ip是为了解决ip资源紧缺问题而出现的解决方案,这种ip的灵活性比较高,所以,在代理ip方面也经常会被用到。

  • 25 2019-04
    动态IP代理选用什么套餐使用好?

    很多人会疑惑,动态IP代理选用什么套餐使用好?到底是按照有效时间选,还是按照提取IP数量选呢?关于这些问题,小编就机灵代理为大家介绍下,其实很多动态IP代理的商家都针对用户的需求

  • 16 2019-09
    代理IP除了能够隐藏地址 还有什么用途?

    可能有些对代理IP不太清楚的人会疑惑,平时不用代理IP也能够好好上网啊,也没见出什么事情。的确是,对于只有普通上网浏览、看看视频的网友来说,普通的网络端就能够满足你绝大部分的

  • 07 2019-05
    租用优质代理ip注意事项

    租用优质代理ip注意事项一般有哪些呢?由于使用代理IP的人数比较多,而且都对质量也可能有些要求,如果想要挑选个好的,还是需要注意一下的几点.

  • 15 2019-04
    高匿代理ip能防止别人查看你的IP地址吗?

    高匿代理ip能防止别人查看你的IP地址吗?网络确实给我们带来了许多的便利,但是隐患也是有的,如信息的泄露,这信息泄露后对于普通人来说是没有影响的,若是有些人拿来牟利,这对我们

  • 08 2019-05
    机灵代理的IP能用多久?

    机灵代理的IP能用多久?使用代理的时候,一般动态的IP都是有使用时长的,因此我们要根据自己的项目来选择动态IP,合理的控制成本,有效时间在几分钟的代理IP价格自然是比可用时间更长的

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

大客户经理微信

微信公众号

微信公众号

回到顶部