IP池设计思考(面试点)[通俗易懂]

IP池设计思考(面试点)面试中IP代理池的几个问题:IP怎么剔除的通过设置失败次数,超过失败次数就会删除,可以自定义失败次数.免费代理多久抓取一次10min抓取一次,代码实现可在ProxyRefreshSchedule.py中查看。每过10min就去目标网站抓取一次。有些网站不更新,当然如果是自己买的IP代理不用考虑代理不会更新的情况,因为买的IP数量应该是足够的。怎…

大家好,又见面了,我是你们的朋友全栈君。

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
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/129461.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号