你所需要的,不仅仅是一个好用的代理。
由于开python培训有讲过爬虫的缘故,这个问题已经被ask无数次了,一般问的基友也都是爬虫防ban用的,那么在此,我把我个人尝试过的代理渠道都写一下。总体来讲,质量好的都不便宜,便宜的质量都比较渣,一分钱一分货
1)通过程序扫出来的代理
通过程序扫IP段、端口找出来的临时性代理。
诸如百度搜索“HTTP代理”,写着“每日更新”、“国内高匿免费”什么的都是这类,购买的话都很廉价。
......
基本都大同小异,没有哪个好那个坏,几个平台提供的代理至少有3成的重复率。
这类代理,有效期都不高,即便批量验证过在使用时还是会废掉一部分,可以应付低效率的采集、刷单次访问量,但是搞别的的还是算了吧
2)ADSL拨号服务器
ADSL拨号,断线重连切IP,淘宝有卖的,限定地区拨号、全国拨号都有。相对较稳定,至少比扫描出来的强很多,但切换IP耗时较长,需要几秒到1分钟之间。
所以如果采集是每访问一次切一次IP的话,效率会很慢,只能等当前IP被对方ban掉的时候在拨号换新的IP。
去年刷百度下拉、搞百度点击器的代理切换曾用过ADSL拨号,比较稳定,有些效果,当然也用过上面扫出来的代理,太烂,没法用。但是限于换IP需要断线重连,导致不容易并发执行任务,所以要大规模化要有些成本。
ADSL拨号可以应付对效率要求不高的采集、刷访问量、刷点击之类的。
3)第三方访问
比如通过“谷歌网页翻译”、“有道网页翻译”、“http代理浏览器”等第三方访问渠道请求目标网页。
速度慢,且采集捕获目标内容的时候多了很多干扰。
4)VPN软件
诸如“flyvpn”、“greenvpn”,采集是IP被ban了直接换一个,VPN软件本身靠谱代理还是挺稳定的,就是人得在电脑旁边,手动换一次。但是偶尔查查几万关键词的百度排名、几万页面收录,用VPN还是挺悠闲的,这点量级总共也换不了多少次。
5)自建代理
买一台服务器,利用squid+stunnel搭建一台HTTP高匿代理服务器,Tinyproxy也行。squit用来实现http代理,stunnel在代理的基础上建一条隧道实现加密。
如果觉得ip数量少,就多买几台服务器,依次配置squid~~
由于是自建代理,都是独享且是真实的IP,所有相当稳定。采集、抢购、刷票、刷点击、刷主播人气什么的都可以干,只有有钱上机子就行~~
去年接了一个爬虫单子,抓国外某股票网站,共千万页面量级,反爬虫做的挺恶心,无奈买了20台低配机子做HTTP代理服务器,一个月5000成本~~
5)自建代理服务商
如果上面方法自己懒得搞,也没有关系。找个做类似服务的商家,开个api端口即可。
国外的有:
Crawlera(/)
......
国内的有:
阿布云(/)
鲲鹏代理(/)
瀚云代理(/)
......
Crawlera和阿布云都用过,除了贵都挺好的,另外在请求频率和并发数上有限制。没办法,要一个ip共享给10个人,每个人并发100,费用又不涨,他们那边得赔死,光带宽费就海里去了。
Done,举铁去了~~