所有分类
  • 所有分类
  • 攻略

代理IP怎么用脚本自动化,Python定时切换节点防封模板

代理ip怎么用脚本自动化,Python定时切换节点防封模板

——爬虫、社媒、抢购党都在用的防封套路,一文给你拆透

一、为什么“手动换IP”已经救不了账号
被封过号的都懂:平台风控早就不是看单IP请求量,而是盯“行为轨迹”。同一账号短时间原地蹦出十几个不同城市,立刻红灯;可如果30分钟才换一次,且每次请求带随机UA、Referer、鼠标轨迹,平台就当你是真人。手动切?切到第3次就烦了,脚本才是答案。

二、选代理ip前先避坑

  1. 别贪“无限流量”,共享池子万人骑,30秒就废;
  2. 问清楚是“存活周期”还是“固定时效”,很多商家把3分钟存活吹成“长效”;
  3. 支持“用户名+密码”提取的,方便脚本里直接requests.get(url, proxies=proxies),不用下载TXT再读;
  4. 看有没有“城市级定位”,做外卖券、球鞋抢购必须精确到街道,否则定位偏移直接砍单。

三、Python定时切换脚本核心思路

  1. 用APScheduler搞“后台调度”,每N分钟触发一次换IP函数;
  2. 函数里先调商家API拿“新IP:端口”,写入全局变量PROXY;
  3. 把requests.Session()的proxies参数指向PROXY,后续所有业务代码复用同一Session,cookies自动带,减少登录;
  4. 加try/except捕获“代理连接超时”,一旦失败立即重拉IP,保证业务不断;
  5. 日志记“时间+IP+响应码”,被封时回头翻日志,一眼看出哪次IP被拉黑。

四、可直接套用的30行模板

import requests, time, random, logging
from apscheduler.schedulers.background import BackgroundScheduler

API = "https://xxx.com/get?type=1&city=440100&num=1"
LOG_FORMAT = "%(asctime)s - %(levelname)s - %(message)s"
logging.basicConfig(filename='ip.log', level=logging.INFO, format=LOG_FORMAT)

PROXY = {}

def get_proxy():
    global PROXY
    try:
        res = requests.get(API, timeout=10).json()
        ip_port = res['data'][0]['ip'] + ':' + str(res['data'][0]['port'])
        PROXY = {'http': f'http://{ip_port}', 'https': f'http://{ip_port}'}
        logging.info(f"新IP: {ip_port}")
    except Exception as e:
        logging.error("取IP失败: " + str(e))

def job():
    get_proxy()
    headers = {'User-Agent': random.choice(UA_POOL)}
    try:
        r = requests.get('https://weibo.com', proxies=PROXY, headers=headers, timeout=15)
        logging.info(f"请求返回: {r.status_code}")
    except Exception as e:
        logging.error("请求失败: " + str(e))

if __name__ == '__main__':
    get_proxy()          # 先拿一个IP
    sched = BackgroundScheduler()
    sched.add_job(job, 'interval', minutes=30, max_instances=3)
    sched.start()
    while True:
        time.sleep(86400)

把API换成你自己的提取地址,UA_POOL塞十几个浏览器UA,直接跑就行。

五、让平台更难盯上你的3个小动作

  1. 随机化请求间隔:在scheduled分钟数后面再加random.randint(0,300)秒抖动;
  2. 业务层加“滑块轨迹”:用selenium-wire接管代理,轨迹生成器插进去,通过率+30%;
  3. 账号池与IP池交叉:A账号只用华南IP,B账号只用华东,降低交叉污染,被封也只废一条线。

六、常见报错秒解决
407 Authentication required → 代理账号密码填错,检查proxies里http://user:pass@ip:port格式;
502 Bad Gateway → IP被目标服务器拉黑,立即重拉;
requests.exceptions.TooManyRedirects → 代理被运营商劫持,换HTTPS代理或加verify=False。

七、进阶:Docker+定时任务一键云跑
把脚本打包成镜像,用crontab写“每6小时重启容器”,防止内存泄漏;阿里云函数计算+定时触发器也行,按量付费,每天跑2小时成本不到3毛。

八、一句话总结
代理IP自动化=稳定API+APScheduler+异常重试+日志回溯,模板丢上去就能跑,别再手点“切换节点”折磨自己。

采购代理IP请添加微信客户经理:x31471626

阅读全文
原文链接:https://sk5ip.com.cn/hangyezixun/dailiipzenmeyongjuebenzidonghu/,转载请注明出处~~~
0
分享海报

评论0

请先
显示验证码

社交账号快速登录

微信扫一扫关注
如已关注,请回复“登录”二字获取验证码