1.使用精灵代理(http://www.jinglingdaili.com/Shop-index.html),通过Api获取,每次返回一个固定时间(五分钟)的IP,然后将获取到的ip存入mongoDB数据库使用。
2.每次调用爬虫的时候,都会从数据库中拿到代理ip。①若ip失效则再次通过Api获取代理ip然后存入数据库②若数据库无代理ip,则通过Api获取代理ip然后存入数据库。
-
方法testIp(ip):用来检测ip是否可用,返回值为true或者false
-
方法getApiIp():通过Api获取代理ip,返回值是代理IP
-
方法insertMongo(ip):将Api获取到的ip存入mongo数据库
-
方法getmongo():从mongo数据库获取代理IP,返回值是代理ip
-
方法deletemongo(ip):从mongo数据库删除ip
4.使用代理ip策略
if(getmongo()==null){
ip = getApiIp();
insertMongo(ip)
}else{
ip=getmongo()
if(test(ip)==true){
//使用这个代理ip
}else{
deletemongo(ip)
ip = getApiIp();
insertMongo(ip)
}
}