方法1
使用多IP代理:
1.IP必须需要,比如ADSL。如果有条件,其实可以跟机房多申请外网IP。
2.在有外网IP的机器上,部署代理服务器。
3.你的程序,使用轮训替换代理服务器来访问想要采集的网站。
好处:
1.程序逻辑变化小,只需要代理功能。
2.根据对方网站屏蔽规则不同,你只需要添加更多的代理就行了。
3.就算具体IP被屏蔽了,你可以直接把代理服务器下线就OK,程序逻辑不需要变化。

方法2.
有小部分网站的防范措施比较弱,可以伪装下IP,修改X-Forwarded-for(貌似这么拼。。。)即可绕过。 、
大部分网站么,如果要频繁抓取,一般还是要多IP。
我比较喜欢的解决方案是国外VPS再配多IP,通过默认网关切换来实现IP切换,比HTTP代理高效得多,估计也比多数情况下的ADSL切换更高效​

方法3.
ADSL + 脚本,监测是否被封,然后不断切换 ip 设置查询频率限制
正统的做法是调用该网站提供的服务接口。​

方法4.
国内ADSL是王道,多申请些线路,分布在多个不同的电信区局,能跨省跨市更好,自己写好断线重拨组件,自己写动态IP追踪服务,远程硬件重置(主要针对ADSL猫,防止其宕机),其余的任务分配,数据回收,都不是大问题。​

方法5.
1 user agent 伪装和轮换
2 使用代理 ip 和轮换
3 cookies 的处理,有的网站对登陆用户政策宽松些
友情提示:考虑爬虫给人家网站带来的负担,be a responsible crawler :)​

方法6.
尽可能的模拟用户行为:
1、UserAgent经常换一换;
2、访问时间间隔设长一点,访问时间设置为随机数;
3、访问页面的顺序也可以随机着来 。​

方法7.
网站封的依据一般是单位时间内特定IP的访问次数.
我是将采集的任务按 目标站点的IP进行分组
通过控制每个IP 在单位时间内发出任务的个数,来避免被封.
当然,这个前题是你采集很多网站.如果只是采集一个网站,那么只能通过多外部IP的方式来实现了。​

方法8.
对爬虫抓取进行压力控制;可以考虑使用代理的方式访问目标站点。
降低抓取频率,时间设置长一些,访问时间采用随机数
频繁切换UserAgent(模拟浏览器访问)
多页面数据,随机访问然后抓取数据 -更换用户IP。​​​​​
如果需要高匿爬虫代理ip.可以尝试飞蚁代理。

飞蚁代理在爬虫使用过程中解决ip被封锁IP限制的8种方法相关推荐

  1. 数据采集爬虫ip代理基本原理-飞蚁代理

    我们在做爬虫的过程中经常会遇到这样的情况,最初爬虫正常运行,正常抓取数据,一切看起来都是那么正常,然而一杯茶的功夫可能就会出现错误,比如403 Forbidden,这时候打开网页一看,可能会看到&qu ...

  2. 分享推荐几家适合爬虫的代理ip(飞蚁代理、阿布云、亿洲网络)

    多年的爬虫总结,如今要改行了,分享一下我觉得好用的几家爬虫IP代理. 飞蚁代理:http://www.feiyiproxy.com 阿布云:https://www.abuyun.com/ 亿洲网络:h ...

  3. [案例]飞蚁代理使用说明

    一 提供服务 当前只支持高匿的 http/https 代理 二 实现机制 图示 数据转发流程: 1连接接入服务器(proxy.360pdown.com:88) 2发送数据至接入服务器 3接入服务器从 ...

  4. nginx反向代理(proxy_pass)tomcat的过程中,session失效的问题解决

    nginx反向代理(proxy_pass)tomcat的过程中,session失效的问题解决 参考文章: (1)nginx反向代理(proxy_pass)tomcat的过程中,session失效的问题 ...

  5. 爬虫过程中解决html乱码和获取的文本乱码问题

    爬虫过程中解决html乱码和获取的文本乱码问题 response1 = requests.get(url=detail_url, headers=headers) responseText1 = re ...

  6. xlsx怎么设置行高列宽_Excel2016中调整行高和列宽的两种方法

    在报表的编辑过程中经常需要调整特定行的行高或列的列宽,例如当单元格中输入的数据超出该单元格宽度时,需要调整单元格的列宽.本文图文讲述了Excel2016中调整行高和列宽的两种方法. 方法一:使用命令调 ...

  7. java7 javascript引擎_Java7中脚本引擎的一般用法,共三种方法获得JavaScript引擎:名称、文件扩展名、MIME类型 | 学步园...

    package com.sino.java7; import javax.script.ScriptEngine; import javax.script.ScriptEngineManager; i ...

  8. 多个html如何套用套一个头部,Vue.js项目中管理每个页面的头部标签的两种方法...

    在 Vue SPA 应用中,如果想要修改 HTML 的头部标签,如页面的 title ,我们只能去修改 index.html 模板文件,但是这个是全局的修改,如何为每个页面都设置不一样的 title ...

  9. java整型转换为数组_基于java中byte数组与int类型的转换(两种方法)

    java中byte数组与int类型的转换,在网络编程中这个算法是最基本的算法,我们都知道,在socket传输中,发送.者接收的数据都是 byte数组,但是int类型是4个byte组成的,如何把一个整形 ...

最新文章

  1. memcached图形界面的监控
  2. 机器学习_周志华_问题汇总_第2周
  3. 苏大微型计算机原理与应用题库,苏大单片机原理及应用试卷
  4. 华为手机微信网络连接到服务器失败怎么办,微信H5支付在华为手机里报错 网络环境未能通过安全验证,请稍后再试 怎么解决啊 试了好多方法也不行...
  5. python matplotlib.pyplot中的.plot()和.scatter()以及.subplot()和.add_axes()区别
  6. PHP数据类型的转化:(类型) 变量 类型val(变量) settype(变量,类型)
  7. C# js调用winform方法,C# JS与winform通信
  8. 深根固柢 云起磐石——移动云大云磐石服务器重磅推出
  9. 猜数字游戏python程序用函数guesssecret_Python-三、函数
  10. 全民果园为什么服务器在维修中,你在果园管理中遇到的问题这里可以解决
  11. php复制目录图片,php实现将base64格式图片保存在指定目录的方法
  12. pgAdmin III 使用图解
  13. python检测excel表是否存在空值
  14. web开发路径问题解决
  15. hadoop day02
  16. 转:SDHC卡驱动及初始化
  17. 实时数据库数据采集接口API八爪鱼采集接口
  18. apple tv 开发_Apple TV首批#madewithunity游戏发售
  19. 【向StoneDB迁移数据】数据迁移同步工具-Gravity
  20. 数据查询和业务流分开_索格非SOGEFI:EDI 业务场景详解之生成DESADV

热门文章

  1. mysql 将小写字段 转大写
  2. sublime修改侧边导航栏(side bar)文件名字体大小
  3. slor6.5配置ikanalyzer-solr分析器
  4. 计算机网络看图分析题,计算机网络基础试题及参考答案
  5. STM32 + FM1702NL读卡器使用记录
  6. python编程语言能做什么_可以用 Python 编程语言做哪些神奇好玩的事情?
  7. 玩转Luat 基础篇⑥——开关机powerKey开机键控制(自动开机 / 手动开机)
  8. 惠普HP OfficeJet 200 打印机驱动
  9. Web Serial Debug-浏览器串口调试工具
  10. 液晶显示器的工作原理