影刀RPA进阶教程_代理IP配置与网络环境管理
影刀RPA进阶教程:代理IP配置与网络环境管理
做跨境或大规模采集时,单一 IP 频繁请求容易被限流。
代理 IP 是最直接的解决方案——让不同的请求走不同的出口 IP,分散风险。
一、代理在影刀里的三种使用方式
| 方式 | 怎么做 | 适用场景 |
|---|---|---|
| 影刀全局代理 | 设置→网络→配置代理 | 整个影刀客户端的所有流量都走代理 |
| Python 请求代理 | 代码里指定 proxies 参数 | 只有 Python HTTP 请求走代理 |
| 浏览器插件代理 | Chrome 安装 SwitchyOmega | 浏览器内灵活切换 |
二、方式一:影刀全局代理
影刀客户端支持 HTTP/HTTPS/SOCKS5 代理:
店群矩阵自动化突破运营极限!
设置 → 网络 → 代理类型 → 手动配置填入:
| 字段 | 值 |
|---|---|
| 代理类型 | HTTP / SOCKS5 |
| 代理地址 | 代理服务商提供的 IP |
| 端口 | 代理服务商提供的端口 |
| 用户名 | (如果需要认证) |
| 密码 | (如果需要认证) |
优点:配置一次,所有流量都走代理。
缺点:切换不方便,所有流程共用同一个代理。如果代理挂了,所有流程都受影响。
三、方式二:Python 代码中指定代理(推荐)
更灵活,每个请求独立指定代理。
3.1 单代理
Python代码:importrequests proxy_ip="127.0.0.1"proxy_port="7890"proxies={"http":f"http://{proxy_ip}:{proxy_port}","https":f"http://{proxy_ip}:{proxy_port}"}resp=requests.get("https://api.example.com/data",proxies=proxies,timeout=15)print(resp.status_code)3.2 代理池轮换
Python代码:importrequestsimportrandomimporttime# 代理池proxy_list=["http://ip1:port1","http://ip2:port2","http://ip3:port3",]defget_data_with_rotation(url):"""使用随机代理请求"""proxy=random.choice(proxy_list)proxies={"http":proxy,"https":proxy}try:resp=requests.get(url,proxies=proxies,timeout=10)returnrespexceptExceptionase:print(f"代理{proxy}失败:{e}")returnNone# 使用foriinrange(10):proxy=random.choice(proxy_list)print(f"第{i+1}次请求,使用代理:{proxy}")# 执行请求...time.sleep(1)3.3 带有失效剔除的代理池
Python代码:importrequestsimporttimefromcollectionsimportdefaultdict proxy_list=["http://ip1:port1","http://ip2:port2","http://ip3:port3",]# 记录每个代理的失败次数fail_count=defaultdict(int)MAX_FAILS=3# 连续失败3次就踢出defget_available_proxy():"""获取可用的代理"""available=[pforpinproxy_listiffail_count[p]<MAX_FAILS]ifnotavailable:print("⚠️ 所有代理已失效!")# 重置失败计数,再试一轮forpinproxy_list:fail_count[p]=0available=proxy_listreturnavailable[hash(str(time.time()))%len(available)]defrequest_with_proxy(url):proxy=get_available_proxy()try:resp=requests.get(url,proxies={"http":proxy,"https":proxy},timeout=10)fail_count[proxy]=0# 成功,清零returnrespexceptExceptionase:fail_count[proxy]+=1print(f"代理{proxy}失败 ({fail_count[proxy]}/{MAX_FAILS})")raisee四、代理 IP 的来源
| 来源 | 价格 | 质量 | 适用场景 |
|---|---|---|---|
| 免费代理 | 免费 | 极不稳定 | 仅测试用 |
| 付费隧道代理 | 几百元/月 | 稳定 | 日常采集 |
temu店群自动化报活动案例
| 付费独享代理 | 上千元/月 | 最稳 | 重要任务 |
| 自建代理(VPS) | 几十元/月 | 自己维护 | 跨境访问 |
建议:不要用免费代理。免费代理慢、不稳定、有安全风险。花几百块买付费隧道代理,一个月的稳定足够值回票价。
五、代理与影刀浏览器的联动
影刀内置浏览器走的是系统代理,Python 请求走的是代码指定的代理。两者可以分开:
# 场景:浏览器用影刀的全局代理访问目标网站# 同时 Python 代码用另一个代理请求 API打开网页("https://目标网站.com")# 走影刀全局代理Python代码:importrequests# 这个请求走独立代理,不影响浏览器resp=requests.get("https://api.目标网站.com/data",proxies={"http":"http://另一个代理:port","https":"http://另一个代理:port"},timeout=15)六、代理使用注意事项
| 注意点 | 说明 |
|---|---|
| 不是所有网站都吃代理 | 有些网站检测代理 IP 并直接拒绝 |
| 代理 ≠ 匿名 | 普通 HTTP 代理会在请求头里暴露你的真实 IP(X-Forwarded-For) |
| 代理会增加延迟 | 多一跳就有多一点延迟,对速度敏感的流程要注意 |
| 代理会过期 | 付费代理也有时效,设置自动续期或检测机制 |
| 跨境代理尤其重要 | 国内访问 TEMU/TikTok Shop 必须用跨境代理 |
作者:林焱
本文为《影刀RPA学习手册》系列文章之一,内容源于实操经验的整理与分享。
