您的位置:首页 > 新闻资讯 >文章内容
使用代理IP分布式爬虫
来源:互联网 作者:admin 时间:2019-10-16 10:46:38

  分布式爬虫这种抓取方式能够帮助爬虫工作者提高工作效率,不仅是爬虫进度得到了提升,而且数据抓取的速度也有飞跃进步。那么使用代理IP进行分布式爬虫要怎么进行呢?以下是操作教程:


使用代理IP分布式爬虫


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


  每个线程,从接口随机取回一批IP回来,循环尝试IP列表去抓取数据;


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


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


  方案缺点:IP代理都是有时间有效期的,如果提取了50个,你在一定期限内是有了前20个,后面的可能由于时间限制就用不了了。


  如果你把http请求设置的链接时间超时为3秒钟,毒物时间超时间5秒,那么这3-8秒就可能被你浪费掉,有这3-8秒能做好多事了。


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


  每个线程,从接口随机取回一个IP来,用这个IP去访问资源,


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


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


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


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


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


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


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


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


  除了要有优质的代理IP,选择爬虫的方式也很重要,分布式爬虫能够让我们有效完成工作,深受广大爬虫工作的喜爱。


相关文章内容简介
推荐阅读
  • 05 2019-06
    寻找能够免费测试的爬虫代理ip

    寻找能够免费测试的爬虫代理ip,这难吗?目前很多领域都是需要使用到代理ip的,尤其是互联网营销推广,还有一些网赚项目,或者是大数据爬取信息,那么怎么找爬虫代理ip呢?

  • 29 2019-10
    https代理怎么用于爬虫?

    除了http代理,现在很多网站都开启了https认证,这么一来,https代理的使用也变得多了。在爬虫的时候,我们要怎么使用https代理?且看机灵代理带来的攻略。

  • 26 2019-03
    免费服务器代理在使用过程中的状态如何?

    现如今服务器在发展过程中越来越受到大家的关注,有很多服务器代理商为了扩展自己的业务,都会推出免费服务器代理,让客户提前是要根据个人的实际需要试用之后,再次选择是否购买。那

  • 15 2019-02
    java爬虫的HttpClient请求

    我们在获取网络资源的过程中,或许会一些限制,所以许多Java程序要使用HTTP协议来获取网络资源,今天我们来了解下java爬虫的HttpClient请求:

  • 25 2019-11
    网络数据要用代理服务器抓取

    网络在我们的工作、生活占据了很大一部分,现在如果剥离了网络,我们很多惯用的东西都会失效。大数据时代,代理IP让数据抓取变得简单,推动了数据的演变。

  • 28 2019-02
    ip代理的主要应用场景,使用IP代理有什么要求?

    网络的兴起,很多工作都需要借助网络的力量完成,但是很多网站都有网络设置,为了完成任务,就需要突破这些限制,比如IP限制。这个限制的应对方法比较简单,就是换IP,那么关键是如何

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

大客户经理微信

微信公众号

微信公众号

回到顶部