Python反爬虫技术之防止IP地址被封杀的讲解


Posted in Python onJanuary 09, 2019

在使用爬虫爬取别的网站的数据的时候,如果爬取频次过快,或者因为一些别的原因,被对方网站识别出爬虫后,自己的IP地址就面临着被封杀的风险。一旦IP被封杀,那么爬虫就再也爬取不到数据了。

那么常见的更改爬虫IP的方法有哪些呢?

1,使用动态IP拨号器服务器。

动态IP拨号服务器的IP地址是可以动态修改的。其实动态IP拨号服务器并不是什么高大上的服务器,相反,属于配置很低的一种服务器。我们之所以使用动态IP拨号服务器,不是看中了它的计算能力,而是能够实现秒换IP。

动态IP拨号服务器有一个特点,就是每次拨号都会更换一个新的IP地址。多年前家庭中的上网方式大多采用的ADSL拨号上网,也就是断开网络后再拨号一次,外网IP就会换成另一个。

通常来讲,这个IP池很大,可能有多个AB号段,IP数量基本上用不完。对于爬虫来说,这简直是大杀器,能够轻松的解决封杀IP的限制。

使用动态IP拨号服务器,需要付费购买。

2,使用Tor代理服务器。

Tor(The onion router, 洋葱路由器)是互联网上用于保护隐私最有利的工具之一。如果我们不适用Tor,网络请求就会直接发送给目标服务器。

相比之下,如果我们使用tor发送网络请求,客户端就会选择一条随机路径到服务器。这条随机路径中间会经过多个Tor节点,而且使用洋葱路由加密技术,使得任何节点都不能偷取加密数据,并且该请求的传输路径难以追踪,也查不出起点在哪。

Python反爬虫技术之防止IP地址被封杀的讲解

因此,我们可以使用tor技术改变请求的IP地址,作为一种终极的防止IP封锁的爬虫方案。

最近在学习《Python网络爬虫从入门到实践》,了解到其中的关于反爬虫的一些话题,做一下学习笔记。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

Python 相关文章推荐
python如何实现远程控制电脑(结合微信)
Dec 21 Python
深入学习python的yield和generator
Mar 10 Python
Python获取当前路径实现代码
May 08 Python
Python数据结构与算法之链表定义与用法实例详解【单链表、循环链表】
Sep 28 Python
Django中针对基于类的视图添加csrf_exempt实例代码
Feb 11 Python
Python从零开始创建区块链
Mar 06 Python
mac安装scrapy并创建项目的实例讲解
Jun 13 Python
python读取csv和txt数据转换成向量的实例
Feb 12 Python
python实现整数的二进制循环移位
Mar 08 Python
使用Python自动生成HTML的方法示例
Aug 06 Python
Python爬虫实现模拟点击动态页面
Mar 05 Python
keras的三种模型实现与区别说明
Jul 03 Python
Python Pywavelet 小波阈值实例
Jan 09 #Python
python利用小波分析进行特征提取的实例
Jan 09 #Python
Python 实现中值滤波、均值滤波的方法
Jan 09 #Python
对Python信号处理模块signal详解
Jan 09 #Python
使用python实现语音文件的特征提取方法
Jan 09 #Python
对python中Librosa的mfcc步骤详解
Jan 09 #Python
Python中的枚举类型示例介绍
Jan 09 #Python
You might like
PHP获取MAC地址的函数代码
2011/09/11 PHP
PHP中上传多个文件的表单设计例子
2014/11/19 PHP
微信公众平台开发教程⑥ 微信开发集成类的使用图文详解
2019/04/10 PHP
用js实现键盘方向键翻页功能的代码
2007/06/03 Javascript
jquery submit ie6下失效的原因分析及解决方法
2013/11/15 Javascript
JavaScript实现的一个日期格式化函数分享
2014/12/06 Javascript
用JavaScript实现页面重定向功能的教程
2015/06/04 Javascript
实例讲解jQuery中对事件的命名空间的运用
2016/05/24 Javascript
JavaScript兼容性总结之获取非行间样式案例
2016/08/07 Javascript
修改Jquery Dialog 位置的实现方法
2016/08/26 Javascript
javascript动画之磁性吸附效果篇
2016/12/09 Javascript
angular中实现控制器之间传递参数的方式
2017/04/24 Javascript
一个有意思的鼠标点击文字特效jquery代码
2017/09/23 jQuery
JavaScript 判断对象中是否有某属性的常用方法
2018/06/14 Javascript
js中Generator函数的深入讲解
2019/04/07 Javascript
原生JS实现动态添加新元素、删除元素方法
2019/05/05 Javascript
javascript实现5秒倒计时并跳转功能
2019/06/20 Javascript
vue filter 完美时间日期格式的代码
2019/08/14 Javascript
如何使用JavaScript实现无缝滚动自动播放轮播图效果
2020/08/20 Javascript
JS实现密码框效果
2020/09/10 Javascript
JS实现小米轮播图
2020/09/21 Javascript
Python模拟脉冲星伪信号频率实例代码
2018/01/03 Python
python3+PyQt5泛型委托详解
2018/04/24 Python
python散点图实例之随机漫步
2018/08/27 Python
Python处理session的方法整理
2019/08/29 Python
python实现简单成绩录入系统
2019/09/19 Python
python实现高斯判别分析算法的例子
2019/12/09 Python
Maisons du Monde德国:法国家具和装饰的市场领导者
2019/07/26 全球购物
中兴通讯全球官方网站:ZTE
2020/12/26 全球购物
JAVA程序设计笔试题面试题一套
2015/07/28 面试题
怎么写好自荐书
2014/03/02 职场文书
2014年教师节寄语
2014/08/11 职场文书
私人房屋买卖协议书
2014/10/04 职场文书
二手房购房协议书范本
2014/10/05 职场文书
劳动纠纷调解协议书格式
2014/11/30 职场文书
行政撤诉申请书
2015/05/18 职场文书