Chinaunix首页 | 论坛 | 博客
  • 博客访问: 15477
  • 博文数量: 36
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 370
  • 用 户 组: 普通用户
  • 注册时间: 2022-12-14 16:49
文章分类

全部博文(36)

文章存档

2024年(2)

2023年(28)

2022年(6)

我的朋友

分类: Python/Ruby

2023-12-01 17:52:18

大家好呀!我经常看到大家在讨论,有时候买了HTTP代理后,还是会遇到被封的烦恼,IP池子可用率也变得极低,成功率断崖式下降,影响了工作进度,严重点的甚至项目都完不成了。那我们该怎么解决这个问题呢?

别慌!!

只要你get到这个小妙招分分钟解决。


一、增效

如何增效,也是有技巧的,如果你只是盲目增高抓取频率,那可能{BANNED}最佳终的效果会适得其反。

1.适时轮换User-Agent

大家要记住,不同浏览器,甚至是同一浏览器的不同版本,它们的User-Agent都是不一样的。所以,我们可以准备一大堆User-Agent,放在一个列表里。用的时候随机挑一个,这样每次发请求的时候都用不同的User-Agent,这招能帮我们大大降低被封的概率。

2.爬虫策略,要灵活变通 

首先,得看看咱们之前被封时网站返回的是哪种HTTP状态码,根据这个来调整咱们的爬虫策略。

HTTP返回码

说明

302

出现302一般有2种情况

  • 客户端IP为海外IP,服务器会重定向到预警页面:
  • 客户端访问的目标站被拦截,比如银行网站、邮箱、社交软件等,服务器返回重定向到预警页面;

400

客户端错误。客户端协议无法被识别

407

授权错误,出现407一般有3种情况

  • 白名单模式,则可能是用户有多出口IP,没有全部添加到白名单;
  • 账离模式,可能是账密信息错误
  • 共享P产品中可能是IP已过期

408

目标站不可达。服务端与目标站建连失败,服务端不可达或者当前HTTP代理掉线

429

请求数超出。隧道产品中用户QPS大于购买的请求数;独享和共享产品中,用户当前的代理tcp连接超出限制数

431

请求头过大。出现在http代理中,header头部信息过多导致

500

服务器内部错误

503

当前代理协议不支持,比如ss代理协议

508

代理目标站为HTTP代理地址导致死循环。一般不出现


例如,我们一直用同一个HTTP代理,短时间内频繁访问同一个网站,很容易就触发反爬了;或者,我们爬虫的速度太快,也容易被识别出来。


那我们该怎么做呢?

降低抓取的频率,调整访问时间间隔:减少访问次数、让访问间隔时长时短时不一、用随机的间隔时间。

二、降本

成本调控也占绝了很大的比重,当然了,效果好还是我们的”初心“,毕竟谁也不想白白花钱,不看到成效吧。

市面上的HTTP代理服务提供商还是非常多的,要找到一家靠谱的也是不容易。

对于HTTP代理服务产品质量的考量,每个人心里都或多或少有个标准,但都离不开

测试

这2个字。

实战测试才能真正体现出IP池子质量的好坏,是否适合我们的业务场景需求。

经过多番测试,我推荐这家的HTTP代理,可以说是米花的少,但是效果{BANNED}最佳大化了。



测试下来,IP池子可用率在98%左右,带宽2M也够我用,匿名安全什么的不说了,反正整轮业务下来,还蛮圆满。

用了这么2个月下来,中间有个小插曲是,和其他大部分厂商一样,出现了中途可用率下降的阶段,和其他大部分厂商不一样的是,他们能及时给我调整IP池子,反正我的可用率又上去了,客服售后什么的回复我也很快,处理问题的速度可以看出来他们是一手厂商了。

(之前有家厂商,我不点名是谁了,池子可用率下降,我问客服,客服半天没理我,转了售后,售后也半天没给我解决,我趣,能不能干点事了!)


总的来说,目前还没有找到比这家更好的替代品了,其他的要么价格比他们高,但是效果差不了太多;要么价格差不多,但是效果比他们家差多了,给我搞烦了,所以还是会比较推荐使用他们家吧,以后有其他更可以的,我再来。


阅读(107) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~