爬虫基础 2.5 代理 原理
2.5 代理基本原理
使用代理是为了防止同一个ip频繁的请求而被服务封掉,无法再发起有效的请求。
使用代理服务器发起请求,由代理服务器替代本机向目标站点发起请求,再将响应数据转发到本机。即网站所看到的ip实际上是代理ip非本机ip
2.5.1 代理的作用
突破自身IP访问限制,访问一些平时不能访问的站点
访问一些单位或团体内部资惊 :比如使用教育网内地址段免费代理服务器,就可以用于对教育网开放的各类 FTP 下载上传,以及各类资料查询共享等服务
提高访问速度:通常代理服务器都设置一个较大的硬盘缓 区,当有外界的信息通过时,同时也将·其保存到缓冲区中,当其他用户再访问相同的信息时,则直接由缓冲区中取出信息,传给用户,以提高访问速度
隐藏真实IP 上网者也可以通过这种方法隐藏免受攻击 对于爬虫来说,我们用
代理就是为了隐藏真实请求 IP ,防止本机IP被封锁
2.5.2 代理分类
1 根据协议区分
根据代理的协议,代理可以分为如下类别
FTP 代理服务器: 主要用于访问FTP服务器,有上传下载以及保存功能,端口一般为21 212
HTTP 代理服务器主要用于访问网页,一般有内容过滤和缓存功能端口般为 80、8080 3128
SSL LS 代理:主要用于访问加密网站,有 SSL TLS加密功(最高支持 128 位加密强度),端口一般为443
RTSP 代理:主要用于访问 Real 流媒体服务器,有缓存功能,端口为 554
Telnet 代理:主要用于telnet 远程控制(黑客人侵计算机时常用于隐藏身份),端口般为23
POP3/SMTP 代理:主要用于POP3 SMT方式收发邮件,有缓存功能,端口为110 25
SOCKS 代理:只是单纯传递数据包,不关心具体协议和用法,所以速度快很有保存功能,端口一般为 1080 SOCKS
代理协议又分为 SOCKS4 SOCKS5 ,前者只支持 TCP,而后者支持 TC UDP ,还支持各种身份验证机制、服务器端域名解析 简单来说,SOCKS4 能做到的 SOCKS5 都可以做到,但 SOCKS5 能做到的SOCKS4一定能做到
2 根据代理的匿名程度划分
高度匿名代理:
会将数据包原封不动地转发,在服务端看来就好像真的是 个普通客户端访问,而记录的 IP 是代理服务器的 IP
普通匿名代理:
会在数据包上做一些改动 服务端上有可能发现这是个代理服务器,也有一定几
率追查到客户端的真实 代理服务器通常会加入的 Http头有 HTTP VIA HTTP X FOR DED FOR
透明代理:
不但改动了数据包 还会告诉服务器客户端的真实 IP 这种代理除了能用缓存技
术提高浏览速度,能用内容过滤提高安全性之外,并无其他显著作用,最常见的例子是内网的硬件防火墙
间谍代理:
指组织或个人创建的用于记录用户传输的数据,然后进行研究 监控 目的的代
理服务器