为什么要使用代理?
不知道大家在写爬虫时是否遇到过这样的情况,测试时爬虫可以正常工作,但运行一段时间,就会发现报错或是没有数据返回,网页可能会提示“IP访问频繁”。这就说明网站对IP方面是有反爬措施的(IP一定时间内的请求次数及速度)。如果超过了某个阈值,就会直接拒绝服务,也就是经常说的“封IP”。
这种情况下,就到了代理IP出场了。代理实际就是代理服务器,它的工作原理其实很简单,在我们正常请求一个网站时,是直接发送请求给Web服务器,Web服务器把响应数据传给我们。而用了代理IP,就像是在本机和Web服务器之间搭建了一个“桥”,此时本机会先向代理服务器发出请求,再由代理服务器发送给Web服务器。响应数据的返回也是同样的道理,都需要代理服务器来中转。这样Web服务器就不容易识别出本机IP了。
但代理IP也有优劣之分,以隐匿性来分有3种:高匿代理,普匿代理,透明代理。
接下来就看看 Github 热门的开源项目 ProxyPool 是如何使用吧!
ProxyPool简介
一个爬虫代理IP池,定时采集网上发布的免费代理并验证入库,定时检测代理的可用性,提供 API 和 CLI 两种使用方式。同时你也可以扩展代理源以增加代理池IP的质量和数量。
下载代码
通过 git clone
下载代码
git clone git@github.com:jhao104/proxy_pool.git
或者下载对应zip文件