通过 GET 请求自动提取代理IP,支持短效、长效、不限量等多种套餐类型
根据套餐类型选择对应的提取接口:
| 套餐类型 | 接口地址 |
|---|---|
| 短效动态代理 | GET /api/proxy/extract/short |
| 长效静态代理 | GET /api/proxy/extract/long |
| 不限量代理 | GET /api/proxy/extract/unlimited |
| 隧道代理 | GET /api/proxy/extract/tunnel |
| 参数名 | 说明 |
|---|---|
| package_id | 套餐ID,从套餐管理获取 |
| key | 提取密钥,从套餐管理获取 |
| 参数名 | 说明 | 默认值 |
|---|---|---|
| count | 提取数量 | 1 |
| provinces | 省份代码,多个用逗号分隔(如 11,31) | 全国混播 |
| isps | 运营商,可选值:telecom / unicom / mobile,多个用逗号分隔 | 不限 |
| protocol | 代理协议:HTTP / HTTPS / SOCKS5 | HTTP |
| deduplication | 是否去重:true / false | true |
| format | 返回格式:JSON / TXT | JSON |
| 参数名 | 说明 | 默认值 |
|---|---|---|
| with_city | 是否返回城市信息 | true |
| with_isp | 是否返回运营商信息 | true |
| with_expire_time | 是否返回过期时间(Unix时间戳) | true |
| 参数名 | 说明 | 可选值 |
|---|---|---|
| separator | 分隔符 | \r\n(默认)/ \r / \n / \t |
{
"code": 0,
"message": "提取成功",
"data": [
{
"ip": "36.56.123.45",
"port": 12345,
"city": "北京市",
"isp": "telecom",
"expire_time": 1707308400
}
]
}
长效静态代理 JSON 响应(额外包含认证信息):
{
"code": 0,
"message": "提取成功",
"data": [
{
"ip": "36.56.123.45",
"port": 12345,
"username": "user123",
"password": "pass456",
"proxy_addr": "user123:pass456@36.56.123.45:12345",
"city": "北京市",
"isp": "telecom"
}
]
}
TXT 格式响应(短效):
36.56.123.45:12345
117.136.78.90:23456
TXT 格式响应(长效):
user123:pass456@36.56.123.45:12345
user123:pass456@117.136.78.90:23456
import requests
PACKAGE_ID = 'your_package_id'
KEY = 'your_key'
def extract_short_proxy(count=10):
resp = requests.get(
'https://juziproxy.com/api/proxy/extract/short',
params={
'package_id': PACKAGE_ID,
'key': KEY,
'count': count,
'protocol': 'HTTP',
'format': 'JSON'
},
timeout=10
)
data = resp.json()
if data['code'] == 0:
return [(item['ip'], item['port']) for item in data['data']]
else:
raise Exception(f"提取失败: {data['message']}")
proxies = extract_short_proxy(count=20)
print(f'获取到 {len(proxies)} 个代理')