Python爬虫时被封IP,该怎么解决?四大动态IP平台测评

在使用 Python 进行爬虫时,很有可能因为一些异常行为被封 IP,这主要是因为一些爬虫时产生的异常行为导致的。

在曾经的一次数据爬取的时候,我尝试去爬取Google地图上面的商家联系方式和地址信息做营销,可是很不幸,还只是爬取少量数据就被google的反爬机制把我的IP直接封了。经过各种测试,总结了一些避免踩雷反爬机制的方法,以及被封后如何解决。

一、为什么会踩雷反爬机制

主要原因之一、是同 IP 数据访问频繁。

某个网站一个IP原先几乎不会怎么访问,突然产生了大量的请求,请求数量超过了平均用户访问频率的许多倍,这样反爬机制就会发现异常。如果持续频繁访问,IP就会被封。

主要原因之二、爬虫时产生了异常行为

在编写爬虫程序时,无法注意到所有的请求参数。

比如在写爬虫程序时,发现了一个参数,不知道是怎么计算出来的,但是把这个字段去了发现接口也可以正常调通,然后就顺其自然的忽略这个字段。
在这里插入图片描述

但可能其中某个参数是用于检测是否是爬虫程序的关键,频率高了就被反爬程序封禁。

还有其他的一些反爬的设置,比如验证码输错太多次等等,都有可能触发反爬程序。

二、踩雷了怎么办

踩雷了解决方法其实很简单,反爬机制都是基于 IP 地址进行封禁的,换个 IP 就可以解决所有问题,可以采用动态 IP 的方案。

下面记录几家海外动态住宅IP代理的平台,将从速度、数量、稳定性、特色服务分别对比,避免后续再次探索。

1、Brightdata

Bright Data.CC 前身是Luminati,是一家以色列的公司,是最大和最先进的住宅代理网络,拥有覆盖全球的 72+ 百万个 IP。 通过我们的数据中心、静态住宅、动态住宅和移动网络,Luminati(Bright Data)可以满足您所有需求,提供最优化的解决方案。

Luminati(Bright Data) 的四个网络包含超过 9 种 IP 类型,能够使用规则在9种ip类型之间轻松切换。 同时 Luminati(Bright Data) 提供免费的开源代理管理器和内置代理插件等自动化辅助工具帮助您轻松集成到任何第三方软件中。

速度也挺快,优势很明显,是目前做得最大的一家。唯一的缺点就是:价格太贵!一般团队用不起。
而且以色列人的冷酷是了名了,域名访问限制严格,价格混乱,经常业务和风控团队意见不统一。

2. IPHTML

IPHTML.COM是一家纯正的美国公司,目前已与全球多个网络运营商达成合作,拥有全球197+国家和地区的真实住宅IP资源,他的动态住宅IP拥有全球197+国家和地区的真实住宅IP资源,是来自世界各个国家地区超过2.3+亿的真实家庭住宅代理,可以实现从指定位置访问,避免地理限制。

支持无限并发请求,99.9%成功率,极其稳定的运行时间,可以轻松提高业务整体效率,降低业务成本。凭借其高速稳定、安全隐私、无限流量、经验丰富的客服技术研发团队、全天候多方位的业务场景支持等优势。

在公共数据收集领域,IPHTML正广泛应用在大数据分析、抓取和索引、跨境电商、竞争对手情报、SEO监控优化等领域。

不少中国公司的选品工具、数据挖局工具,背后的提供商是IPHTML。最重要的是,没有任何限制!这家也是我最后选用完成工作的一个平台。

使用方法找了官方的文档:https://github.com/IPHTML/DOC
官网链接:https://iphtml.com/?aff_id=24299

3、Oxylabs

Oxyslab.COM是一家立陶宛的公司,他们代理IP覆盖全球195个国家,超5000+万个纯净优质IP,海外HTTP/HTTPS/SOCKS5代理,企业级IP套餐定制服务,动静态IP,高匿稳定原生IP,代理池稳定。

性能测试

在这里插入图片描述
在计费灵活度方面,BrightdataOxylabs 是订阅的模式,到了月底没使用完的流量就会清0,重新计费,IPHTML 这方便要人性很多,没有要求一定要当月把流量使用完。

价格方面比上面两家稍贵,速度和稳定性还是很不错。缺点是域名限制,我充值之后才发现google的域名默认是被他屏蔽的,需要提交各种说明才能

4、Eastproxy

Eastproxy.COM 也是美国的一家公司,全球动态IP覆盖195+国家,不限国家和城市,支持HTTP/HTTPS/SOCKS5 协议,而且注册不需要KYC。是后起新秀,所以价格是这几家中最划算的。除了动态住宅IP,还有很多静态IP,产品很丰富。

优点价格非常便宜,没有并发和域名限制。缺点是没有中文版网站使用起来不是很顺手但熟悉一下就好了。
这家是我爬虫业务做完之后发现的,目前国内还知道的人并不多。后面有机会实战尝试一下他的IP质量。

四家的价格相对国内一些小厂确实很贵,但一分钱一分货的道理我们还是懂的,为什么贵下面我们再说。

在计费灵活度方面,Brightdata、Oxylabs、Eastproxy是订阅的模式,到了月底没使用完的流量就会清0,重新计费,IPHTML这方便要人性很多,没有要求一定要当月把流量使用完。

还有很重要的一点是 IP 重复率,每家都号称几千万和上亿的IP数量,其实他们都是有侧重点的,有的主要IP在美国,有的在印尼,有的均匀在全球等。还有一点,重复率是指一定时间内同一国家内的IP重复情况。

这是经过几个小时测试的不同平台的重复率情况:

在这里插入图片描述

综合的看的的话,IPHTML会更合适大陆的多账号代理业务,这也是最终选择这个平台的原因。

附上测试代码

curl -s -o /dev/null -w "dns: %{time_namelookup}\ntime_connect: "%{time_connect}"\ntime_appconnect: "%{time_appconnect}"\ntime_pretransfer: "%{time_pretransfer}"\ntime_starttransfer: "%{time_starttransfer}"\ntime_redirect: "%{time_redirect}"\ntime_total: "%{time_total}"\n" -x "代理用户名:代理密码@代理服务器:代理端口" ipinfo.io

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/415017.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C语言之编译和链接

目录 一、引言 二、编译和链接 2.1 预处理&#xff08;预编译&#xff09; 2.2 编译 2.3 汇编 2.4 链接 一、引言 #include <stdio.h> int main() {printf("hello, world\n");return 0; } 像这样&#xff0c;只由ASCII字符构成的文件被称为文本文件&…

基于 Hologres+Flink 的曹操出行实时数仓建设

本文整理自曹操出行实时计算负责人林震基于 HologresFlink 的曹操出行实时数仓建设的分享&#xff0c;内容主要分为以下六部分&#xff1a; 曹操出行业务背景介绍曹操出行业务痛点分析HologresFlink 构建企业级实时数仓曹操出行实时数仓实践曹操出行业务成果分析未来展望 一、曹…

vue3中新增时form对象无法赋值问题

有时候对象的值死活赋不上值&#xff0c;这时候可以看下赋值的对象变量名是否和页面组件中的ref相同&#xff0c; 更改后正常赋值

【spark】SparkSQL

目录 SparkSQL01.快速入门什么是SparkSQL为什么学习SparkSQLSparkSQL的特点SparkSQL发展历史-前身Shark框架SparkSQL发展历史 02.SparkSQL概述SparkSQL和Hive的异同SparkSQL的数据抽象DataFrame概述SparkSession对象 03.DataFrame入门和操作DataFrame的组成DataFrame的代码构建…

探索FTP:原理、实践与安全优化

引言 在正式开始讲解之前&#xff0c;首先来了解一下文件存储的类型有哪些。 DAS、SAN和NAS是三种不同的存储架构&#xff0c;分别用于解决不同场景下的数据存储需求。 DAS (Direct Attached Storage 直接附加存储)&#xff1a;DAS 是指将存储设备&#xff08;如硬盘&#x…

Python Django编写接口并用Jmeter测试的方法

一、环境准备 python3.6.7Pycharm 二、创建项目 我这里是在Django项目中新建了个APP&#xff0c;目录结构如下图所示&#xff1a; 那么怎么在已有的Django项目中新建APP并进行配置呢&#xff1a; 2.1、新建app a、可以在终端输入命令&#xff1a;python manage.py startap…

解密OceanBase数据库引擎:探秘数据的深海奥秘

目录 1、引言 1.1 数据库引擎的重要性 1.2 OceanBase数据库引擎的背景和意义 2、OceanBase数据库引擎的基本概述 2.1 数据库引擎的定义和功能 2.2 OceanBase数据库引擎的特点和优势 3、OceanBase数据库引擎的架构和设计 3.1 分布式架构的概念和原理 3.2 OceanBase数据…

某马头条——day05

文章定时发布 实现方案对比 实现方案 延迟队列服务实现 按照文档进行项目的导入并准备数据库表导入对应实体类和nacos配置中心 乐观锁集成 redis集成和测试 成功集成通过测试 添加任务 ①&#xff1a;拷贝mybatis-plus生成的文件&#xff0c;mapper ②&#xff1a;创建task类…

C语言编译和链接

翻译环境和运行环境 在ANSI C的任何一种实现中&#xff0c;存在两个不同的环境 .第一种是翻译环境&#xff0c;在这个环境中源代码被转换为可执行的机器指令 .第二种是执行环境&#xff0c;它用于实际执行代码 翻译环境 翻译环境是由编译和链接两个大过程组成&#xff0c;而…

SMT回流焊工艺之回流温度曲线

引言 在SMT生产流程中&#xff0c;如何控制回焊炉的温度是非常重要的一环&#xff0c;好的炉温曲线图意味着可以形成良好的焊点。 上一期分享&#xff08;SMT回流焊温度解析之锡膏焊接特性&#xff09;中&#xff0c;我们着重介绍了SMT回流工艺中的锡膏焊接部分。本期内容主要…

docker容器和常用命令

1.什么是容器 容器是隔离的环境中运行的一个 进程 , 如果进程结束 , 容器就会停止. 细致: 容器的隔离环境 , 拥有自己的 ip 地址 , 系统文件 , 主机名 , 进程管理 , 相当于一个 mini的系统 2.容器 vs 虚拟机 3.Docker极速上手指南 #1.安装相关依赖. sudo yum install -y …

十三、Three场景物体增加发光特效

物体发光效果非常炫酷,本期来讲three场景内物体自带发光效果怎么来实现。本次使用的是threejs138版本,在vue3+vite+ant的项目中使用。 下面来看看实现的效果。绿色罐体有了明显的发光效果。 实现步骤 增加composer.js import { UnrealBloomPass } from three/examples/jsm/po…