您当前的位置:首页 > 电脑百科 > 网络技术 > 网络技术

通过代理ip进行分布式爬虫的几种方案

时间:2019-11-05 11:56:29  来源:  作者:

如果不使用代理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服务商建议),把IP列表导入到数据库里面。

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

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

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

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



Tags:分布式爬虫   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除,谢谢。
▌相关推荐
分布式爬虫管理平台Crawlab发现挺不错,但是官方文档中涉及二次开发的环境启动章节比较模糊。最先需要的是克隆代码https://github.com/nickliqian/crawlab前端部署1、安装nod...【详细内容】
2020-07-12  Tags: 分布式爬虫  点击:(37)  评论:(0)  加入收藏
如果不使用代理ip,爬虫工作必定无路可行,因此大部分爬虫工作者都会去购买安全稳定的代理ip。使用了高质量的代理ip后,会不会就能够无后顾之忧了呢?这个可不会这么容易,还要改进方案,有效分配资源,提升工作效率,又快速又稳定又...【详细内容】
2019-11-05  Tags: 分布式爬虫  点击:(62)  评论:(0)  加入收藏
▌简易百科推荐
在目前工业4.0的背景下,企业需要一套可以远程调试设备的系统,利用物联网技术,通过结合PLC设备将设备的信息进行采集、收集,控制。利用PLC设备将设备的数据进行远程采集显示到云...【详细内容】
2021-07-14  博达智联    Tags:虚拟串口   点击:(2)  评论:(0)  加入收藏
DNS 过程,步骤如下:查看浏览器内部缓存 检测域名是否存在于浏览器缓存中,如果有缓存直接使用,没有则下一步。打开chrome://net-internals/#dns 即可查看本机浏览器的 DNS 缓存。...【详细内容】
2021-07-09  尚硅谷教育    Tags:IP 地址   点击:(7)  评论:(0)  加入收藏
前段时间刚部署好了eNSP,紧接着又看了VXLAN的文档,现在我们大概已经知道VXLAN隧道的建立方式分为手工创建和自动创建,放在华为设备上,配置方式可以分为静态方式和EVPN的方式。那...【详细内容】
2021-07-06  衡水铁头哥    Tags:VXLAN   点击:(17)  评论:(0)  加入收藏
动态NAT能解决内网电脑上网问题,但是内网有很多用户同时访问外网,就不能解决这个问题了。 NAPT(Network Address and Port Translation,网络地址端口转换)技术可以解决这个问...【详细内容】
2021-07-05  工科男的深邃    Tags:公网地址   点击:(10)  评论:(0)  加入收藏
我是一个 Linux 服务器上的进程,名叫小进。老是有人说我最多只能创建 65535 个 TCP 连接。我不信这个邪,今天我要亲自去实践一下。我走到操作系统老大的跟前,说:"老操,我要建立一...【详细内容】
2021-07-04  低并发编程  今日头条  Tags:TCP 连接   点击:(18)  评论:(0)  加入收藏
整体规划采用三层网络结构,核心、汇聚三层互联,堆叠采用40G网络,汇聚10G,接入1G,网关下放到汇聚,交换机采用独立管理VLAN,模拟某工厂真实网络情况。功能实现1、核心、汇聚堆叠,动态...【详细内容】
2021-06-28  王忘杰  今日头条  Tags:网络   点击:(10)  评论:(0)  加入收藏
前言当遇到 Java 线上问题时,如 CPU 飙升、负载突高、内存溢出等问题,你需要查命令,查网络,然后 jps、jstack、jmap、jhat、jstat、hprof 等一通操作。而除了这些,Arthas 是一款...【详细内容】
2021-06-25  胡言胡语的笔记    Tags:Arthas   点击:(12)  评论:(0)  加入收藏
如果 ESXi 主机对 LUN 生成的命令超过 LUN 队列深度所允许的数量,则超出的命令会在 VMkernel 中排队。这会增加滞后时间,或是完成 I/O 请求所需的时间。问题主机完成 I/O 请求...【详细内容】
2021-06-23  网络管理员老高  今日头条  Tags:I/O   点击:(19)  评论:(0)  加入收藏
下面是一个简单的echo服务程序:#include <stdio.h>#include <stdlib.h>#include <sys/types.h>#include <sys/socket.h>#include <netinet/in.h>#include <unistd.h>#include...【详细内容】
2021-06-21  追光的Rocky    Tags:exec命令   点击:(20)  评论:(0)  加入收藏
钉钉美图前言最近有一个小需求【调试远程python代码,超方便pycharm教程】需要用到内网穿透,然后自己搜到了【最强内网穿透工具frp】。然后看网友评论里面有推荐【傻瓜式-Web面...【详细内容】
2021-06-18  瞥瞥张  今日头条  Tags:内网穿透   点击:(57)  评论:(0)  加入收藏
相关文章
    无相关信息
最新更新
栏目热门
栏目头条