python反爬虫代理池构建

背景

为什么需要代理?

许多网站为防止爬虫对网站进行不正当访问,对用户访问源IP地址进行了限制(限制包括请求频率/请求次数等)。那么为了解决这一限制,我们的解决方案则是借助IP代理,通过切换访问源IP地址来避免IP地址被封而引发的请求失败问题!

现在互联网上,提供免费代理的网站很多,但直接拿来使用着实蛋疼。质量无法保证,可用率太低!

面对上面的情况,博主做了这么一些事:

  1. 获取网上公开/免费的代理地址;(用于基础库的建立)

  2. 对基础库中的代理地址进行存活检查;

  检查原则:定义一个目标站(即待抓取的站点),以这个站的链接为测试url,这样可以保证在正式抓取这个站点时,代理的可用性可以达到最大化。

  注意事项:尽可能将代理池与业务抓取服务器放在同一局域网中(在不同网络中,将失去代理存活检查的意义)

  1. 对已检查的代理地址进行rest接口化,方便调用(可根据地区/私密程度等进行过滤)。

项目

项目地址:http://gogs.antio.top/wuyue/proxy_workspace.git

备用地址:https://github.com/wuyue92tree/proxy_workspace.git

have fun !