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

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

(0)
上一篇 2022年4月15日 上午6:20
下一篇 2022年4月15日 上午6:40


相关推荐

  • QProcess使用

    QProcess使用QProcess 使用 QProcess 可以用于启动外部程序 具有两种方式 一体式 QProcess start 方法 外部程序启动后 将随主程序的退出而退出 貌似要使用 QProcess 的 close 方法才可以关闭启动的外部程序 分离式 QProcess startDetache 方法 外部程序启动后 当主程序退出时并不退出 而是继续运行 1 start 使用 Qt 头文

    2026年3月19日
    1
  • 你的OpenClaw会主动干活吗?这才是龙虾的王牌场景..

    你的OpenClaw会主动干活吗?这才是龙虾的王牌场景..

    2026年3月13日
    2
  • 元宝

    元宝

    2026年3月13日
    2
  • thinkphp访问路径_thinkphp laravel

    thinkphp访问路径_thinkphp laravel下载地址:http://code.google.com/p/kindeditor/downloads/list基本配置:KE.show({id:’your_editor_id’,width:’700px’,height:’400px’});首先引入kindeditor.js文件;用show方法传入一个数组,里面是你的配置信息,然后

    2022年10月12日
    5
  • stat函数详解

    Linux系统函数之文件系统管理(二)stat函数​作用:获取文件信息​头文件:include<sys/types.h>#include<sys/stat.h>#include<unistd.h>​函数原型:intstat(constchar*path,structstat*buf)​返回值:成功返…

    2022年4月5日
    48
  • Docker 启动redis镜像

    Docker 启动redis镜像查看本地所有容器:dockerps-a查看本地运行中的容器:dockerps查看所有镜像:dockerimagesdaocker启动redis镜像同时设置密码:dockerrun-d–nameredis1-p6379:6379redis–requirepass“gs123456”参数解释:-d:后台运行-name为容器的名字-p端口映射–requirepass:redis密码redis为镜像名…

    2025年11月27日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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