python爬虫基础(五)代理的基本原理

对于爬虫来说,由于爬虫的爬取速度过快,在爬取过程中可能遇到同一个IP访问过于频繁的问题,此时网站就会让我们输入验证码登录或直接封锁IP,所以我们就需要代理来防止发生。

一、基本原理

代理实际上指的是代理服务器,它的功能是代理网络用户去取得网络信息。换句话说,它是信息的中转站。

二、代理的作用

突破自身IP访问限制,访问一些平时不能访问的站点。

访问一些单位或团体内部资源:比如使用教育网内地址免费代理服务器,就可以用于对教育网开放的各类FTP下载上传,以及各类资料查询共享等服务,以及各类资料查询共享等服务。

提高访问速度:通常代理服务器都设置一个较大的硬盘缓冲区,当有外界的信息通过时,同时也将其保存到缓冲区中,当其他用户再访问相同的信息时,则直接由缓冲区中取出信息,传给用户,以提高访问速度。

隐藏真实IP:上网者也可以通过这种方法隐藏自己的IP,免受攻击。对于爬虫来说,就是为了防止自身的IP被封锁。

三、爬虫代理

使用代理隐藏真实的IP,让服务器误以为代理服务器在请求自己。这样在爬取过程中通过不断更换代理,就不会被封锁,可以达到很好的爬取效果。

四、代理分类

1.根据协议区分

FTP代理服务器:主要用于访问FTP服务器,一般有上传、下载以及缓存功能,端口一般为21、2121等。

HTTP代理服务器:主要用于访问加密网站,一般有内容过滤和缓存功能,端口一般80、8080、3128等。

SSL/TLS代理:主要用于访问加密网站,一般有SSL或TLS加密功能(最高128位加密强度),端口一般为443。

RTSP代理:主要用于Real流媒体服务器,一般有缓存功能,端口一般为80、8080、3128等。

Talnet代理:主要用于talent远程控制(黑客入侵计算机时常用于隐藏身份),端口一般为23。

 POP3/SMPT代理:主要用于POP3/SMPT方式收发邮件,一般有缓存功能,端口一般为110/25。

SOCK3代理:只是单纯传递数据包,不关心具体协议和用法,所以速度快很多,一般有缓存功能,端口一般为1080。SOCKS代理协议又分为SOCKS4和SOCKS5,前者只支持TCP,而后者支持TCP和UDP,还支持各种身份验证机制、服务器端域名解析等。

2.根据匿名程度区分

高度匿名代理:会将数据原封不动地转发,在服务端看来就好像真的是一个普通客户端在访问,而记录的IP则是代理服务器的IP。

普通匿名代理::会在数据包上做一些改动,服务端上有可能发现这是个代理服务器。也有一定几率追查到客户端的真实IP。代理服务器通常会加入的HTTP头有HTTP_VIA和HTTP_X_FORWARDED_FOR。

透明代理:不但改动了数据包,还会告诉服务器客户端的真实IP。这种代理除了能用缓存技术提高浏览速度,能用内容过滤提高安全性之外,并无其他显著作用,最常见的例子是内网中的硬件防火墙。

间谍代理:指组织或个人创建的用于记录用户传输的数据,然后进行研究、监控等目的的代理服务器。

五、常见代理设置

使用网上的免费代理:最好使用高匿代理。

使用付费代理服务

ADSL拨号:拨一次号换一次IP。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值