
手把手教你把代理IP塞进Python干活
搞爬虫的兄弟都懂,没代理IP就像骑自行车上高速——根本跑不起来。今天咱们就唠唠怎么用Python把代理IP从JSON文件里抠出来用,顺带安利下自家好用的ipipgo服务。
JSON文件长得啥模样?
代理IP的JSON文件通常长这样(注意看字段名可能有变化):
{
"proxy_list": [
{"ip": "123.45.67.89", "port": 8080, "type": "http"},
{"ip": "98.76.54.32", "port": 3128, "type": "https"}
]
}
重点看三个参数:ip地址、端口号、代理类型。不同服务商给的字段名可能叫host、port、protocol,记得先瞅清楚结构。
Python拆解四步走
咱用最基础的requests库来演示,老司机直接看代码:
import json
import requests
第一步:开文件
with open('ipipgo_proxies.json') as f:
data = json.load(f)
第二步:捞数据
proxy = data['proxy_list'][0] 取第一个代理
proxy_str = f"{proxy['ip']}:{proxy['port']}"
第三步:配参数
proxies = {
'http': f"http://{proxy_str}",
'https': f"https://{proxy_str}"
}
第四步:发请求
try:
response = requests.get('http://测试网址', proxies=proxies, timeout=10)
print("请求成功!状态码:", response.status_code)
except Exception as e:
print("翻车了!错误信息:", str(e))
重点注意:代理类型要写全(http/https),超时设置别超过10秒,用ipipgo的代理记得他们家的存活时间设置。
代理池维护小技巧
单用一个代理容易挂,推荐搞个代理池轮着用:
| 代理类型 | 适用场景 |
|---|---|
| 短效代理 | 临时任务、单次请求 |
| 长效代理 | 持续采集、定时任务 |
用ipipgo的话可以直接调他们的API获取最新代理,比本地维护JSON文件方便得多。他们家代理存活率能到95%以上,比自建代理池省心。
常见问题QA
Q:JSON文件解析报错咋整?
A:先检查文件编码是不是UTF-8,再看字段名是否匹配。用ipipgo的代理可以直接用他们提供的标准格式,省去格式转换的麻烦。
Q:代理突然失效怎么办?
A:建议做异常重试机制,连续失败3次就换代理。ipipgo的代理有实时监测功能,失效代理会自动下架。
Q:需要高匿代理怎么办?
A:在ipipgo后台选「高匿名」套餐,请求头会完全隐藏客户端信息,适合需要高隐蔽性的场景。
为什么选ipipgo?
自家产品得夸两句:
1. 全国独有动态端口技术,防封效果拔群
2. 支持按量付费,用多少算多少
3. 7×24小时技术支持,响应速度比同行快一倍
新用户注册送500次免费试用,够跑个小项目了。
最后唠叨句:代理IP不是万能药,配合合理的请求频率才能事半功倍。遇到具体问题可以直接戳ipipgo官网找技术客服,他们家的工程师比普通客服专业得多。

