您的位置:首页 > 新闻资讯 >文章内容
爬虫加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限制,自然是可以提高爬虫的速度,不过如果不设置一定的延时,过快的访问频率照样会暴露自己。



相关文章内容简介
推荐阅读
  • 15 2020-04
    代理IP为何如此受欢迎

    如果你到现在还不太了解代理ip,那么你可能就无法理解当下新型的网络营销操作了。http代理就是意味着你的ip地址会被另外一个ip所替换来进行访问。

  • 17 2019-05
    代理IP在爬虫中起到破解封IP作用

    代理IP在爬虫中起到破解封IP作用,这封IP是平台的一种反爬机制,主要是拦住海量的爬虫,这爬虫也要求技术的,技术高的一般拦不住,但是大部分的爬虫都能拦住。为什么有些拦不住呢?就是

  • 24 2020-12
    代理服务器如何操作

    互联网上的每台计算机都需要有一个唯一的互联网协议(IP)地址。将此IP地址视为您计算机的街道地址。就像邮局知道如何将你的邮件发送到你的街道地址一样,互联网也知道如何通过IP地址将正

  • 23 2019-04
    怎么找到合适的代理IP访问网站?

    怎么找到合适的代理IP访问网站?都知道现在是数据时代,而获取这些数据去分析的过程中,肯定是会遇到一些问题的,比如各种反爬虫机制,找个合适的代理IP是很重要的应对措施,关键是找

  • 11 2019-10
    机灵代理为你解说代理IP的收费标准

    当爬虫工程师在网络上搜索代理IP服务的时候,可以发现网上现在有着很多的代理服务商,而且不同的服务商,所提供的套餐以及资费也不一样。下面机灵代理给大家讲讲目前比较常见的计费方

  • 17 2019-07
    代理IP不靠谱看看用错了没?

    代理IP不靠谱看看用错了没?百分之九十的人都知道,在使用爬虫多次爬取同一网站时,经常会被网站的IP反爬虫机制给禁掉,为了解决封禁IP的问题通常会使用代理IP。

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

大客户经理微信

微信公众号

微信公众号

回到顶部