爬虫代理池
“
我们在做爬虫项目的时候经常需要做一些反爬措施,其中使用代理就是一个比较好的手段。今天我们就一起来学习一下如何搭建一个自己的爬虫代理池,当然重点是免费!最原始的方法肯定是我们自己单独去写一个爬虫来实现代理池的获取,这样做当然可以,但是作为一个标准的懒汉,我决定了使用大神们已经写好的项目来直接使用!
”
创建代理池
环境
本实例在Ubuntu20.04 python3.8的环境下完成!项目需要使用到redis数据库,参考文章按顺序执行下列代码1.克隆项目到本地https://github.com/jhao104/proxy_pool2.安装依赖pip3install-ihttps://pypi.doubanio.com/simple-rrequirements.txt配置
修改项目的配置文件#setting.py为项目配置文件#配置API服务HOST="0.0.0.0"#IPPORT=5000#监听端口#开放端口nbsp;sudoufwallow5000#打开端口nbsp;sudoufwenable#开启防火墙nbsp;sudoufwreload#重启防火墙#配置数据库DB_CONN='redis://:pwd@127.0.0.1:8888/0'#redis有密码,0是数据库编号DB_CONN='redis://:127.0.0.1:8888/0'#redis无密码,0是数据库编号#配置ProxyFetcherPROXY_FETCHER=["freeProxy01",#这里是启用的代理抓取方法名,所有fetch方法位于fetcher/proxyFetcher.py"freeProxy02",#....]启动项目命令#如果已经具备运行条件,可用通过proxyPool.py启动。#程序分为:schedule调度程序和serverApi服务#启动调度程序python3proxyPool.pyschedule#启动webApi服务python3proxyPool.pyserver#一键启动bashstart.sh根据您自己的环境判断是否将start.sh脚本里面的python换成python3注意:如果您使用的是python3.8在使用python3 proxyPool.py server的时候会出现一个如下报错


使用
启动web服务后, 默认配置下会开启 http://127.0.0.1:5000 的api接口服务: