代理ip

>

换ip软件

>

http代理

>

ip代理

您的位置:首页 > 新闻资讯 > 文章内容
通过代理ip进行分布式爬虫的几种方案
来源:网连代理 作者:admin 时间:2019-06-24 16:51:07

  我们都知道,为了更高效地进行数据抓取,我们需要使用爬虫代理ip,假如不用代理ip,爬虫业务必定无路可行,因此大部分爬虫采集公司都会去购买安全稳定的代理ip。使用了高质量的代理ip后,会不会就能够无后顾之忧了呢?这个可不会这么容易,事实上被追踪、被反爬,不单纯是代理ip的问题,还需要考虑方方面面的东西,还要改进爬虫代理方案,有效分配资源,提升工作效率,又快速又稳定又高效的完成爬虫。


  方案一:每个进程从接口API中随机取一个IP列表来反复使用,失效后再调用API获取,大致逻辑是这样:


  1、每个进程,从接口随机取回一批ip回来,反复试着ip目录去抓取数据;


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


  3、要是失败了,再从接口取一批IP,继续尝试。


  方案弊端:每个IP都是有期限的,要是提取了一百个,用到第二十个时,或许剩下的大多数都无法使用了。要是设置HTTP请求时连接时间超时是3秒,读取时间超时是5秒,那么或许会耗费3-8秒的时间,在这3-8秒内可能抓取了几百次了。


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


  1、每个进程,从接口随机取回一个ip来,用这个ip来浏览资源,


  2、要是访问成功,则继续抓下一条。


  3、要是失败了,再从接口随机取一个IP,继续尝试。


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


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


  1、在数据库里面建一个表,写一个导入脚本,每分钟请求多少次API(咨询代理IP服务商建议)以网连代理为例,单次提取数量在200个IP,间隔最快1秒,也就是说1分钟最快可以请求60次,把IP列表导入到数据库里面。


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


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


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


  这种方案有效的避开了代理服务器资源的消耗,有效的分配代理IP的使用,更加的高效和稳定,保障了爬虫工作的持久性和稳定性。网连代理使用稳定可靠,IP资源丰富,支持免费测试,建议大家可以测试一下。


相关文章内容简介
推荐阅读
  • 11 2019-01
  • 12 2019-10
    爬虫小白需要了解的代理ip知识

    对于爬虫初学者来说,在爬虫工作中可能会遇到很多问题,最常见的封IP问题,代理IP选择及使用问题,反爬虫问题等等。想要更好的完成日常的爬虫工作,有必要多了解一些代理IP的知识,以及

  • 14 2019-10
    爬虫代理和隧道代理的区别

    HTTP代理指的是使用代理服务器使网络用户访问外部网站。代理服务器是介于浏览器和Web服务器之间的一台服务器,是建立在超文本传输协议上的网络浏览方式,作用是可以防伪部分对协议进行

  • 12 2019-10
    代理IP对爬虫工作的帮助体现在哪里

    爬虫的工作流程是什么呢?爬虫首先要做的工作就是访问网页,然后获取网页内容,这里就是获取网页的源代码。源代码里包含了网页的部分有用信息,所以只要把源代码获取下来,就可以从中

  • 03 2018-12
  • 01 2019-03
    换ip软件工程师教您电脑ip地址查询方法

    换ip软件工程师教您电脑ip地址查询方法