代理IP接口调用到底怎么玩?手把手教你写代码
很多朋友在数据采集时都遇到过IP被封的情况,这时候就需要用代理IP来解决问题。作为技术老鸟,给大家演示下如何用天启代理的API接口快速接入服务。
一、准备工作别马虎
在天启代理官网注册后,你会拿到API密钥和接口文档。特别要注意他们的终端授权方式,支持IP白名单和账号密码两种验证,咱们这里用更简单的IP白名单方式。
必填参数说明:| 参数 | 作用 |
|---|---|
| apiKey | 身份验证密钥 |
| city | 指定代理IP所在城市 |
| count | 获取IP数量 |
| format | 返回数据格式(json/xml) |
二、Python实战代码
先安装requests库,天启代理的接口响应速度控制在1秒内,这对爬虫效率很关键。
import requests
def get_proxy():
url = "https://api.tianqi.proxy/getip"
params = {
"apiKey": "你的密钥",
"city": "北京",
"count": 5,
"format": "json"
}
try:
resp = requests.get(url, params=params, timeout=3)
if resp.status_code == 200:
ips = [f"{item['ip']}:{item['port']}" for item in resp.json()['data']]
return ips
else:
print(f"请求失败:{resp.text}")
except Exception as e:
print(f"连接异常:{str(e)}")
使用示例
proxies = get_proxy()
print("获取到的代理IP:", proxies)
三、Java对接指南
用HttpClient实现,注意设置连接超时参数,天启代理的响应延迟在10ms以内,这里设置2秒超时足够。
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
public class ProxyLoader {
public static void main(String[] args) {
String apiUrl = "https://api.tianqi.proxy/getip?apiKey=你的密钥&city=上海&count=3&format=json";
try (CloseableHttpClient client = HttpClients.createDefault()) {
HttpGet request = new HttpGet(apiUrl);
request.setHeader("Accept", "application/json");
String response = client.execute(request, httpResponse ->
EntityUtils.toString(httpResponse.getEntity()));
System.out.println("获取结果:" + response);
} catch (Exception e) {
e.printStackTrace();
}
}
}
四、高频问题解答
Q:获取的代理IP突然不能用了怎么办?
A:天启代理的IP可用率≥99%,如果遇到失效IP,建议:1.检查白名单设置 2.使用他们的自动去重功能 3.调用接口重新获取
Q:怎么提高代理IP使用效率?
A:三个技巧:①合理设置IP存活时间(静态IP最长24小时)②使用连接池复用IP ③根据业务需求选择3-30分钟动态IP或长效静态IP
五、为什么选天启代理
实际使用中发现三个亮点:①自建机房IP纯净,不像公共代理经常混用 ②SOCKS5协议支持很实用 ③技术支持响应快,上次凌晨3点提工单居然秒回。特别是他们的分布式集群架构,实测同时调取500个IP没出现卡顿。
最后提醒新手朋友:使用代理IP时务必遵守网站爬虫协议,合理设置请求频率。天启代理的IP存活时间参数可以配合业务需求灵活调整,这个功能很实用。


