IP池设计思考(面试点)

原创
2019/07/10 14:47
阅读数 0

IP池设计思考(面试点)

面试中IP代理池的几个问题:

  1. IP怎么剔除的
    通过设置失败次数, 超过失败次数就会删除, 可以自定义失败次数.

  2. 免费代理多久抓取一次
    10min抓取一次, 代码实现可在ProxyRefreshSchedule.py中查看。每过10min就去目标网站抓取一次。有些网站不更新,当然如果是自己买的IP代理不用考虑代理不会更新的情况,因为买的IP数量应该是足够的。

  3. 怎么接入自己的代理设置
    在GetFreeProxy类中(该文件在ProxyGetter文件夹中), 添加自己的静态方法, 扩展自己的代理.扩展的IP可以是免费代理,也可以是购买的IP代理。

  4. 代理多久验证一次
    每五分钟,ProxyValidSchedule.py文件中可以查看。每过5min就会检测现有的可用的代理的情况。将不符合的代理剔除掉。剔除的原理是一次检测不成功就会剔除,当然也可以设置10次,100次等。

  5. 新代理检测频率
    每一分钟检测一次, 先将获取的代理保存在数据库里面名为raw_proxy, 然后将该代理每1min检测一次,
    检测成功的放入userful_proxy, userfull_proxy是每5min检测一次.

  6. API接口怎么实现的
    通过flask, 在本地实现的接口.将数据库里面的代理提取出来。

    1. get是随机获取一个IP
    2. delete是删除指定的IP
展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部