做爬虫采集,代理IP是绑定的基础设施。私密代理IP是其中比较主流的一种方案——通过API提取代理IP列表,在代码里自行调度和使用,所有IP都是高匿名的,目标网站无法识别你在用代理。

这篇文章把私密代理IP的使用流程和代码实战讲清楚,帮你快速上手。

什么是私密代理IP

私密代理IP的工作方式很简单:服务商提供一个API接口,你调用这个接口就能拿到一批可用的代理IP地址,然后在你的爬虫代码里把请求通过这些IP转发出去。

几个关键特性:

  1. 高匿名:目标网站看到的是代理IP,完全看不到你的真实IP,请求头里也不会带 X-Forwarded-For 之类的暴露字段
  2. 白名单验证:使用前需要把你本机的出口IP添加到白名单,只有白名单内的IP才能使用这些代理,安全性比用户名密码认证更好
  3. API提取:按频率从接口拉取IP,可以根据业务需要控制提取节奏

和隧道代理的区别在于:隧道代理给你一个固定入口地址,每次请求自动换IP,你不用管IP调度;私密代理需要你自己管理IP列表,但灵活性更高,可以做IP去重、质量筛选这些操作。

使用流程

整个接入过程分五步:

  1. 注册账号:在 蜻蜓代理 注册并完成实名认证
  2. 购买套餐:根据需求选择经典版或极速版,经典版包天25元起
  3. 添加白名单:把你的服务器IP加到白名单里,基础白名单5个,每新增一个订单可额外添加3个
  4. 调用API提取IP:用订单里提供的API地址提取代理IP
  5. 代码中使用代理:拿到IP后在 requests 或其他HTTP库中配置代理发送请求

Python 代码示例

注意点:

  1. 下面的 api_url 通过 https://proxy.horocn.com/tools/api-doc 页面生成
  2. 私密代理需要添加你的 IP 到白名单列表中。否则,会返回 407 状态码,提示:`身份验证不通过,您的客户端IP(xxx)未在系统的白名单列表中 - 广东朝雾科技
import requests  
from urllib.parse import urlparse, parse_qs, urlencode, urlunparse  
  
# 第一步:从API提取代理IP  
api_url  = "https://proxyapi.horocn.com/api/v2/proxies?order_id=xxx&num=4&format=json&line_separator=win&can_repeat=yes&user_token=xxx"  
  
# 校验并强制设置 format=jsonparsed = urlparse(api_url)  
params = parse_qs(parsed.query)  
if params.get("format", [None])[0] != "json":  
 print("警告:format 参数不是 json,已自动修改为 json") params["format"] = ["json"] new_query = urlencode({k: v[0] for k, v in params.items()}) api_url = urlunparse(parsed._replace(query=new_query))  
resp = requests.get(api_url)  
data = resp.json()  
  
# 检查错误码  
if data.get("code") != 0:  
 msg = data.get("msg", "未知错误")  
 tip = data.get("data", {}).get("tip", "") print(f"API 请求失败: {msg},{tip}")  
 exit(1)  
proxy_list = data.get("data", [])  
print(f"本次提取到 {len(proxy_list)} 个代理IP")  
  
# 第二步:使用代理IP发送请求  
# 返回结果参考:{"origin":"120.83.117.239"}  
target_url = "http://42.194.246.108:9444/ip"  
  
for proxy_info in proxy_list:  
 host = proxy_info["host"] port = proxy_info["port"] proxies = { "http": f"http://{host}:{port}", "https": f"http://{host}:{port}", } try: result = requests.get(target_url, proxies=proxies, timeout=10) print(f"代理 {host}:{port} => 状态码: {result.status_code}, 响应: {result.text[:200]}")  
 except requests.RequestException as e: print(f"代理 {host}:{port} 请求失败: {e}")  

经典版和极速版怎么选

蜻蜓代理的私密代理分经典版和极速版,核心差异在提取节奏上:

维度经典版极速版
提取频率5秒/10秒1秒
每次提取量10~50个1~10个
包天价格25元26元

选择建议:如果你的场景是批量采集、一次要用大量IP同时并发,选经典版,一次最多拿50个IP,攒一批集中用;如果你的场景是高频轮换、每个请求都要换IP,选极速版,1秒就能提取,切换更快。

两个版本价格差距不大,主要看你的采集模式。不确定的话可以先用 免费试用 跑一下,注册实名认证后可以领取1000个IP的试用额度。

经典版购买:https://proxy.horocn.com/buy/secret-proxy.html
极速版购买:https://proxy.horocn.com/buy/fast-secret-proxy.html

有接入问题可以联系客服,蜻蜓代理的客服团队都是技术人员,对接起来比较顺畅。

转载请注明