接上文所述,在购买了IP代理之后,
需要用redis进行IP代理池的构建
但是本文章的方法为不花钱的方法
1.理想化的IP代理是这样滴
proxies= {
#下面的这些代理是一次性生成的,事实上动态生成需要每隔一个时间间隔就刷新购买到的API
"http":"http://111.127.119.230:13456",
"http":"http://221.230.216.211:13456",
"http":"http://111.75.125.219:13456",
"http":"http://.38.241.103:13456",
"http":"http://223.214.217.45:13456",
"http":"http://183.4.22.247:13456",
"http":"http://125.87.93.115:13456",
"http":"http://114.233.51.125:13456",
"http":"http://182.38.172.166:13456",
"http":"http://222.189.191.29:13456",
"http":"http://121.233.207.136:13456",
"http":"http://60.184.199.19:13456",
"http":"http://115.226.128.29:13456",
"http":"http://121.233.206.155:13456",
"http":"http://117.91.248.87:13456",
"http":"http://115.152.230.162:13456",
"http":"http://115.152.231.172:13456",
"http":"http://115.196.198.11:13456",
"http":"http://61.130.131.105:13456",
}
url='http://www.baidu.com'
response = requests.get(url=url,proxies=proxies)
但是实际情况却要复杂的多,原因是:IP代理的rp时效只有五分钟。
根据提供IP代理商家提出的方式,可以一秒钟访问一下这个网址,然后每次采集的时候都是用最后一次踢出来的代理地址。
接下来慢工出细活
2.redis闪亮登场,连接RedisClinent(redis数据库图形化界面)
redisclient github链接(借用大神的)
https://github.com/caoxinyu/RedisClient.git
直接在对应路径里
#利用github镜像加后缀
git clone https://github.com.cnpmjs.org/caoxinyu/RedisClient.git
或者另一种redis 图形化界面
git clone https://github.com.cnpmjs.org/fastogt/fastonosql
操作redis client
redis连接过程参考如下链接
https://www.cnblogs.com/liuconglin/p/5847351.html
3.redis操作
假如出现报错err client sent auth but no password is set,则是没设置密码的缘故
连接后设置连接密码操作如下链接:
https://www.cnblogs.com/robinli/p/9265186.html
连接成功的界面
4.redis:IP代理池的构建
结合github项目 :proxy_pool 完成IP池构建
https://github.com/jhao104/proxy_pool(膜拜大佬)
这个是redis+flask结合的开源项目
爬取成功之后是这样滴
接下来要做的就是把redis中的代理IP和爬虫代码对接,完成最后的斗争