长效代理-提取IP接口
## 1. 接口描述
接口请求域名: longterm.proxy.qg.net。
本接口 (/get) 用于长效代理产品提取IP资源的接口。
默认接口请求频率限制:(通道数*5+10)次/分钟。
推荐使用调试工具进行调试,[调试工具](https://www.qg.net/tools/IPdebug.html)。
## 2. 输入参数
| 参数名称 | 必选 | 类型 | 描述 |
| -------- | ---- | ------- | ------------------------------------------------------------ |
| key | 是 | String | 公共参数,产品唯一标识。 |
| area | 否 | String | 按地区提取。 |
| isp | 否 | Integer | 按运营商提取。
0: 不筛选
1: 电信
2: 移动
3: 联通 |
| num | 否 | Integer | 提取个数,默认为1。 |
## 3. 输出参数
| 参数名称 | 类型 | 描述 |
| ------------ | ----------------------------------------------- | ------------------------------------------------------------ |
| code | String | 请求状态码。 |
| data.task_id | String | 提取批次的ID。 |
| data.ips | Array of [IP](https://www.qg.net/doc/1839.html) | IP资源列表。
**注:IP结构中的server才是代理地址,proxy_ip是代理的真实出口IP。** |
| data.num | Integer | 提取到的IP资源数量。 |
| request_id | String | 唯一请求ID,每次请求都会返回。定位问题时需要提供该次请求的 request_id。 |
## 4. 示例
#### 输入示例
```
GET https:/longterm.proxy.qg.net/get?key=<您的key信息>&<其他输入参数>
```
#### 输出示例
```json
{
"code": "SUCCESS",
"data": {
"task_id": "0LIKQ3S1_task",
"ips": [
{
"proxy_ip": "123.54.55.24",
"server": "123.54.55.24:59419",
"area": "河南省商丘市",
"isp": "电信",
"deadline": "2023-02-25 15:38:36"
}
],
"num": 1
},
"request_id": "83158ebe-be6c-40f7-a158-688741083edc"
}
```
## 5. 错误码
| 错误码 | 描述 |
| ---------------------- | ------------------------------------------------------------ |
| INTERNAL_ERROR | 系统内部异常。 |
| INVALID_PARAMETER | 参数错误(包含参数格式、类型等错误)。 |
| INVALID_KEY | Key不存在或已过期。 |
| UNAVAILABLE_KEY | Key不可用,已过期或被封禁 |
| ACCESS_DENY | Key没有此接口的权限。 |
| API_AUTH_DENY | Api授权不通过,请检查[Api鉴权配置](https://www.qg.net/user/proxyIpManage)。 |
| KEY_BLOCK | Key被封禁。 |
| REQUEST_LIMIT_EXCEEDED | 请求频率超出限制。 |
| NO_RESOURCE_FOUND | 资源不足。 |
| FAILED_OPERATION | 提取失败。 |
隧道代理(全球HTTP)-超级机房池
**全球HTTP均不支持在中国大陆地区网络环境下使用**。
#### 一、介绍
超级机房池,顾名思义,其IP资源来自全球各地的大型数据中心,由知名的云计算服务商控制。
目前,数据中心池IP资源覆盖了全球100+个国家地区,日去重数达400W+,拥有高质的代理服务质量,能够稳定、可靠地满足用户的各类需求。

*超级机房池IP直接表现在IP信息上的是所属ASN的type类型为business(或hosting)。
#### 二、资源池特点
相比于住宅池,超级机房池
- 由知名云厂商统一管理控制,网络更加稳定
- 性价比更高,可以根据使用的流量计费,还提供不限流量套餐选择
#### 三、适用客户群
- 追求高性价比的客户
- 不要求住宅网络,更在意稳定性的客户
[开始选用【超级机房池】套餐>](https://www.qg.net/business/proxyip.html?region=overseas&product_type=3)
代理IP操作中的常见问题汇总
#### 单日最多获取IP数量和单次最多获取数量是多少?
动态IP每天可用的IP数量超过百万级,在通道数足够的情况下,短效代理通道提取方式单次最多可以申请100个IP,按量提取方式单次最多可以申请200个IP,为您的业务提供强大的助力;
静态IP最小的存活期为24小时,超过24小时后,客户可以自由地选择释放申请IP,静态IP一周只能更换2次。
#### IP是否支持文本提取,支持格式有哪些?
目前只能通过API获取,提取格式为JSON格式和TXT文本格式,暂不支持HTML网页格式,后期会上线该功能,敬请期待哦~
#### 提取不到IP?提示没有剩余的可用通道数?
当在申请IP时出现该提示,可通过调试工具的通道配额接口方法查看当前key的使用情况, 如果Available为0则表示当前AuthKey的可用通道数已被使用完;如果Available不为0,先到调试工具的【释放IP资源】进行通道IP的释放,再查询通道可用数。
#### 浏览器设置代理弹出【用户名:密码】对话框,提示要输入密码
出现这种问题有两种情况:
(1) 白名单IP授权模式下,绑定的不是使用代理的终端IP,或者绑定的不是固定出口IP;
(2)【用户名:密码】授权模式下,即使在后台绑定了终端IP授权,还是会弹出【用户名:密码】对话框的。
选择终端IP授权模式,并绑定使用代理的终端IP授权(固定出口IP),则可避免这种情况的发生。
#### 多久可以切换IP?最长可以用多久?
##### 1.多久可以切换IP
不同的代理套餐对应的IP切换时间不同,具体如下:
(1)短效代理
为系统根据所对应的套餐分钟数在到期后自动进行释放,不支持人工手动释放已申请的IP;
(2)独享代理
在已申请的IP地址使用时间大于30秒后才可进行释放;
(3)独享代理(地区锁)
IP可自主重拨,删除或释放IP需要添加线路12小时后才能执行;
(4)长效代理(静态IP高级版)
在已申请的IP地址使用时间大于24小时后才可进行释放。
##### 2.最长可以用多久?
不同的代理套餐对应的IP使用时长不同,具体如下:
(1)短效代理IP
受现有套餐存活期限的限制,目前单个IP最长仅支持使用30分钟;
(2)独享代理IP
目前单个IP最长支持使用24小时;
(3)长效代理IP
静态IP:24小时起,长期有效,不限制使用时间。
动态IP:数小时至数天,自然失效
#### 申请IP时的生存周期KeepAlive是否可以自动释放IP?
短效代理IP的释放由系统控制,无法手动释放;独享代理(地区锁)则在【IP管理】或调试工具重拨IP资源接可;
独享代理申请IP过程中的KeepAlive需自行设定的IP时长,可在套餐支持的时长0-1440分钟范围内填写合适的数字,默认24小时;
长效代理IP,静态IP高级版可以手动释放IP,一周2次机会,IP需使用24小时以上可操作释放。
#### 各套餐每天/每次最多能提取多少IP?
一通道代表着并发的意思,即一通道同一时间内最多仅有一个IP。通俗的解释,相当于客户购买拨号VPS去自己搭建代理IP;
##### 1.IP提取情况如下:
(1)独享代理IP
目前的存活期存在着最小1分钟的限制,最大存活期为24小时,也就是客户最快在申请当前IP后的1分钟可以释放该IP,并且又可以马上申请新IP。假设客户每个IP仅使用最短的1分钟时间,那 么一天最多可用IP的计算公式为24×60=1440个;
(2)短效代理IP
短效代理IP的存活期为系统控制,客户无法主动释放代理IP,如客户购买的是存活期1-5分钟的套餐,则其IP的存活时间为在1-5分钟内,在客户申请共享IP的时候,系统会返回其IP的deadtime(结束时间)。假设若存活时间结束后,客户马上申请新的代理IP,则其一天最多可用IP数为24×60=1440个,最小可用IP数为24×60/5=288个;
(3)长效代理IP
目前长效代理分为静态和动态两种子产品,动态IP自然失效,静态IP分为普惠版和高级版,普惠版IP固定不变,高级版IP最小的存活期为1天(可手动释放),目的是防止同行或某些客户滥用资源等情况。超过1天后,客户可以自由地选择更换其他IP。但是此类客户在IP可用情况下,一般不会进行更换IP。
##### 2.不同套餐IP的单次提取限制如下:
(1)短效、静态
套餐单次可提取IP数量=剩余可用通道数,单次最多可提取100个IP;
(2)短效(按量提取)
套餐单次可提取数量=剩余可用数量,单次最多可提取200个IP。
短效代理-使用指南-开发版
青果为有经验的开发者提供多种API接口及代码示例,以协助开发者更便利地使用代理。
本篇仅以【提取IP】这一操作为例,介绍如何使用API接口-代码方式来使用代理。
## 步骤总览

## 一、API鉴权与代理授权
青果支持开发者对API鉴权和代理授权验证进行自主管理,以下介绍这一阶段的操作
**API鉴权**是指对调用API接口的服务器身份进行验证的功能。启用鉴权可以提高安全性,用户可以根据需要选择启用或关闭该功能。
用户可根据意愿选择开启和关闭API鉴权(默认关闭),青果提供的鉴权方式有密码和白名单两种,在对应业务【操作】-【业务设置】-【API鉴权/白名单】中进行设置即可。


**代理授权验证**是指对代理身份进行验证,只有通过对应信息才能使用该代理IP,确保您的使用权益和安全性。
青果代理IP支持白名单和帐密两种验证方式,可自主选择使用。
白名单模式,即把要实现代理的服务器IP添加进代理白名单中,后续使用该IP连接代理就能成功;
账密模式,即先获取该代理业务的账号密码信息,连接代理时填入账密进行验证就可使用代理。
白名单设置的入口与API鉴权一样。

详细步骤可查看>[如何使用API鉴权](https://www.qg.net/doc/2283.html)、[代理验证](https://www.qg.net/doc/1574.html)
## 二、获取api接口
青果给开发者提供两种方式来获得api接口
① 使用调试工具/提取工具
调试工具是青果为开发者推出的快速获取接口&调试的简便工具,传送门[>>调试工具](https://www.qg.net/tools/IPdebug.html)
使用调试工具,用户需要先在左侧栏目中选好产品及接口类型,并在右侧表格的参数值列中填写所需信息,便可在页面上方看到完整的【请求地址】,这便是提取IP的API接口。
点击【发送】还能快速调试,查看响应结果,确认该代理接口是否可用。

调试工具除了有提取IP接口,还提供查询在用IP、资源池、资源地区等接口。
若只需要提取IP,也可以使用提取工具,进行简单的选择便可以获取一样的接口链接。传送门[>>提取工具 ](https://www.qg.net/tools/IPget.html)

② 查看api接口文档
除了简便工具,开发者也可以通过更原始的接口文档,自主编写所需的接口链接。
**点击了解API接口文档 >[弹性提取类型](https://www.qg.net/doc/product/6_255_263_264/2254.html)、[按量提取类型](https://www.qg.net/doc/product/6_255_263_265/2140.html)、[均匀提取类型](https://www.qg.net/doc/product/6_255_263_266/2258.html)、[通道提取类型](https://www.qg.net/doc/product/6_255_263_267/2139.html)**
## 三、代理测试
在代理服务器中打开命令行,输入相应的代理信息进行运行,若响应成功,则代理可用。
以下图为例,通过curl命令测试账密模式的代理结果,查询IP并成功响应。
`curl -x http://{authkey}:{authpwd}@{118.92.69.112}:{32105} {targetUrl}`

若响应不成功,可对应[错误码表](https://www.qg.net/doc/1838.html),排查问题。
## 四、编写采集程序
测试代理可用后,便可开始编写代理采集程序了。
青果提供了多种编程语言的代码示例供开发者参考,
详情查看
- [C语言代码示例](https://www.qg.net/doc/sdk/9_230/1694.html)
- [Go语言代码示例](https://www.qg.net/doc/sdk/9_230/1695.html)
- [PHP语言代码示例](https://www.qg.net/doc/sdk/9_230/1696.html)
- [Python语言代码示例](https://www.qg.net/doc/sdk/9_230/1697.html)
- [Java语言代码示例](https://www.qg.net/doc/sdk/9_230/1698.html)
- [Shell语言代码示例](https://www.qg.net/doc/sdk/9_230/1699.html)
- [C#语言代码示例](https://www.qg.net/doc/sdk/9_230/1700.html)
- [Node语言代码示例](https://www.qg.net/doc/sdk/9_230/1701.html)
**注:**青果代理IP产品都有相对应的IP存活周期,其有效时长是从提取到IP时算起,超过这个时长IP会失效。
隧道代理-使用指南-开发版
青果隧道代理与其他形式的代理IP不同,不需要API接口即可连接使用代理IP,因此省去了获取IP和管理IP池等动作。以下介绍如何用代码方式,快速使用隧道代理。
## 步骤总览

## 一、获取隧道地址
1.在青果完成产品购买后,就会自动进入控制后台,看到如以下的页面,产品列中就有隧道地址;

**请注意,**目前国内代理IP和全球HTTP的产品,除了按量提取对应的套餐是按量业务之外,其他产品都属于按时业务。
## 二、授权验证
获取到隧道地址之后,还需要有授权验证才能使用代理。隧道代理支持白名单和帐密两种验证方式,可自主选择使用。
白名单模式,即把要实现代理的服务器IP添加进代理白名单中,后续使用该IP连接代理就能成功;
账密模式,即先获取该代理业务的账号密码信息,连接代理时填入账密进行验证就可使用代理。

详细步骤可查看[代理验证 >](https://www.qg.net/doc/use/8_244/1574.html)
## 三、代理测试
在代理服务器中打开命令行,输入相应的代理信息进行运行,若响应成功,则代理可用。
以下图为例,通过curl命令测试账密模式的代理结果,查询IP并成功响应。
`curl -x http://{authkey}:{authpwd}@隧道地址 {targetUrl}`

若响应不成功,可对应[错误码表](https://www.qg.net/doc/1838.html),排查问题。
## 四、编写采集程序
测试代理可用后,便可开始编写代理采集程序了。
青果提供了多种编程语言的代码示例供开发者参考,
详情查看
- [隧道代理 Go 语言接入指南](https://www.qg.net/doc/1872.html)
- [隧道代理 Python 语言接入指南](https://www.qg.net/doc/1879.html)
**注:**青果代理IP产品都有相对应的IP存活周期,其有效时长是从提取到IP时算起,超过这个时长IP会失效。
独享代理-使用指南-开发版
青果为有经验的开发者提供多种API接口及代码示例,以协助开发者更便利地使用代理。
本篇仅以【提取IP】这一操作为例,介绍如何使用API接口-代码方式来使用代理。
## 步骤总览

## 一、API鉴权与代理授权
青果支持开发者对API鉴权和代理授权验证进行自主管理,以下介绍这一阶段的操作
**API鉴权**是指对调用API接口的服务器身份进行验证的功能。启用鉴权可以提高安全性,用户可以根据需要选择启用或关闭该功能。
用户可根据意愿选择开启和关闭API鉴权(默认关闭),青果提供的鉴权方式有密码和白名单两种,在对应业务【操作】-【业务设置】-【API鉴权/白名单】中进行设置即可。


**代理授权验证**是指对代理身份进行验证,只有通过对应信息才能使用该代理IP,确保您的使用权益和安全性。
青果代理IP支持白名单和帐密两种验证方式,可自主选择使用。
白名单模式,即把要实现代理的服务器IP添加进代理白名单中,后续使用该IP连接代理就能成功;
账密模式,即先获取该代理业务的账号密码信息,连接代理时填入账密进行验证就可使用代理。
白名单设置的入口与API鉴权一样。

详细步骤可查看>[如何使用API鉴权](https://www.qg.net/doc/2283.html)、[代理验证](https://www.qg.net/doc/1574.html)
## 二、获取api接口
青果给开发者提供两种方式来获得api接口
① 使用调试工具/提取工具
调试工具是青果为开发者推出的快速获取接口&调试的简便工具,传送门[>>调试工具](https://www.qg.net/tools/IPdebug.html)
使用调试工具,用户需要先在左侧栏目中选好产品及接口类型,并在右侧表格的参数值列中填写所需信息,便可在页面上方看到完整的【请求地址】,这便是提取IP的API接口。
点击【发送】还能快速调试,查看响应结果,确认该代理接口是否可用。

调试工具除了有提取IP接口,还提供查询在用IP、资源池、资源地区等接口。
若只需要提取IP,也可以使用提取工具,进行简单的选择便可以获取一样的接口链接。传送门[>>提取工具 ](https://www.qg.net/tools/IPget.html)

② 查看api接口文档
除了简便工具,开发者也可以通过更原始的接口文档,自主编写所需的接口链接。
**[独享代理API接口文档 >](https://www.qg.net/doc/product/6_257_271_272/2141.html)**
**[独享代理(地区锁)API接口文档 > ](https://www.qg.net/doc/product/6_257_271_273/2142.html)**
## 三、代理测试
在代理服务器中打开命令行,输入相应的代理信息进行运行,若响应成功,则代理可用。
以下图为例,通过curl命令测试账密模式的代理结果,查询IP并成功响应。
`curl -x http://{authkey}:{authpwd}@{118.92.69.112}:{32105} {targetUrl}`

若响应不成功,可对应[错误码表](https://www.qg.net/doc/1838.html),排查问题。
## 四、编写采集程序
测试代理可用后,便可开始编写代理采集程序了。
青果提供了多种编程语言的代码示例供开发者参考,
详情查看
- [C语言代码示例](https://www.qg.net/doc/sdk/9_230/1694.html)
- [Go语言代码示例](https://www.qg.net/doc/sdk/9_230/1695.html)
- [PHP语言代码示例](https://www.qg.net/doc/sdk/9_230/1696.html)
- [Python语言代码示例](https://www.qg.net/doc/sdk/9_230/1697.html)
- [Java语言代码示例](https://www.qg.net/doc/sdk/9_230/1698.html)
- [Shell语言代码示例](https://www.qg.net/doc/sdk/9_230/1699.html)
- [C#语言代码示例](https://www.qg.net/doc/sdk/9_230/1700.html)
- [Node语言代码示例](https://www.qg.net/doc/sdk/9_230/1701.html)
**注:**青果代理IP产品都有相对应的IP存活周期,其有效时长是从提取到IP时算起,超过这个时长IP会失效。
长效代理-使用指南-开发版
青果为有经验的开发者提供多种API接口及代码示例,以协助开发者更便利地使用代理。
本篇仅以【提取IP】这一操作为例,介绍如何使用API接口-代码方式来使用代理。
## 步骤总览

## 一、API鉴权与代理授权
青果支持开发者对API鉴权和代理授权验证进行自主管理,以下介绍这一阶段的操作
**API鉴权**是指对调用API接口的服务器身份进行验证的功能。启用鉴权可以提高安全性,用户可以根据需要选择启用或关闭该功能。
用户可根据意愿选择开启和关闭API鉴权(默认关闭),青果提供的鉴权方式有密码和白名单两种,在对应业务【操作】-【业务设置】-【API鉴权/白名单】中进行设置即可。


**代理授权验证**是指对代理身份进行验证,只有通过对应信息才能使用该代理IP,确保您的使用权益和安全性。
青果代理IP支持白名单和帐密两种验证方式,可自主选择使用。
白名单模式,即把要实现代理的服务器IP添加进代理白名单中,后续使用该IP连接代理就能成功;
账密模式,即先获取该代理业务的账号密码信息,连接代理时填入账密进行验证就可使用代理。
白名单设置的入口与API鉴权一样。

详细步骤可查看>[如何使用API鉴权](https://www.qg.net/doc/2283.html)、[代理验证](https://www.qg.net/doc/1574.html)
## 二、获取api接口
青果给开发者提供两种方式来获得api接口
① 使用调试工具/提取工具
调试工具是青果为开发者推出的快速获取接口&调试的简便工具,传送门[>>调试工具](https://www.qg.net/tools/IPdebug.html)
使用调试工具,用户需要先在左侧栏目中选好产品及接口类型,并在右侧表格的参数值列中填写所需信息,便可在页面上方看到完整的【请求地址】,这便是提取IP的API接口。
点击【发送】还能快速调试,查看响应结果,确认该代理接口是否可用。

调试工具除了有提取IP接口,还提供查询在用IP、资源池、资源地区等接口。
若只需要提取IP,也可以使用提取工具,进行简单的选择便可以获取一样的接口链接。传送门[>>提取工具 ](https://www.qg.net/tools/IPget.html)

② 查看api接口文档
除了简便工具,开发者也可以通过更原始的接口文档,自主编写所需的接口链接。
**[点击查看API接口文档 >](https://www.qg.net/doc/product/6_258_274/2143.html)**
## 三、代理测试
在代理服务器中打开命令行,输入相应的代理信息进行运行,若响应成功,则代理可用。
以下图为例,通过curl命令测试账密模式的代理结果,查询IP并成功响应。
`curl -x http://{authkey}:{authpwd}@{118.92.69.112}:{32105} {targetUrl}`

若响应不成功,可对应[错误码表](https://www.qg.net/doc/1838.html),排查问题。
## 四、编写采集程序
测试代理可用后,便可开始编写代理采集程序了。
青果提供了多种编程语言的代码示例供开发者参考,
详情查看
- [C语言代码示例](https://www.qg.net/doc/sdk/9_230/1694.html)
- [Go语言代码示例](https://www.qg.net/doc/sdk/9_230/1695.html)
- [PHP语言代码示例](https://www.qg.net/doc/sdk/9_230/1696.html)
- [Python语言代码示例](https://www.qg.net/doc/sdk/9_230/1697.html)
- [Java语言代码示例](https://www.qg.net/doc/sdk/9_230/1698.html)
- [Shell语言代码示例](https://www.qg.net/doc/sdk/9_230/1699.html)
- [C#语言代码示例](https://www.qg.net/doc/sdk/9_230/1700.html)
- [Node语言代码示例](https://www.qg.net/doc/sdk/9_230/1701.html)
**注:**青果代理IP产品都有相对应的IP存活周期,其有效时长是从提取到IP时算起,超过这个时长IP会失效。
短效代理(全球HTTP)-使用指南-开发版
**全球HTTP均不支持在中国大陆地区网络环境下使用。**
青果为有经验的开发者提供多种API接口及代码示例,以协助开发者更便利地使用代理。
本篇仅以【提取IP】这一操作为例,介绍如何使用API接口-代码方式来使用代理。
## 步骤总览

## 一、API鉴权与代理授权
青果支持开发者对API鉴权和代理授权验证进行自主管理,以下介绍这一阶段的操作
**API鉴权**是指对调用API接口的服务器身份进行验证的功能。启用鉴权可以提高安全性,用户可以根据需要选择启用或关闭该功能。
用户可根据意愿选择开启和关闭API鉴权(默认关闭),青果提供的鉴权方式有密码和白名单两种,在对应业务【操作】-【业务设置】-【API鉴权/白名单】中进行设置即可。


**代理授权验证**是指对代理身份进行验证,只有通过对应信息才能使用该代理IP,确保您的使用权益和安全性。
青果代理IP支持白名单和帐密两种验证方式,可自主选择使用。
白名单模式,即把要实现代理的服务器IP添加进代理白名单中,后续使用该IP连接代理就能成功;
账密模式,即先获取该代理业务的账号密码信息,连接代理时填入账密进行验证就可使用代理。
白名单设置的入口与API鉴权一样。

详细步骤可查看>[如何使用API鉴权](https://www.qg.net/doc/2283.html)、[代理验证](https://www.qg.net/doc/1574.html)
## 二、获取api接口
青果给开发者提供两种方式来获得api接口
① 使用调试工具/提取工具
调试工具是青果为开发者推出的快速获取接口&调试的简便工具,传送门[>>调试工具](https://www.qg.net/tools/IPdebug.html)
使用调试工具,用户需要先在左侧栏目中选好产品及接口类型,并在右侧表格的参数值列中填写所需信息,便可在页面上方看到完整的【请求地址】,这便是提取IP的API接口。
点击【发送】还能快速调试,查看响应结果,确认该代理接口是否可用。

调试工具除了有提取IP接口,还提供查询在用IP、资源池、资源地区等接口。
若只需要提取IP,也可以使用提取工具,进行简单的选择便可以获取一样的接口链接。传送门[>>提取工具 ](https://www.qg.net/tools/IPget.html)

② 查看api接口文档
除了简便工具,开发者也可以通过更原始的接口文档,自主编写所需的接口链接。
**点击了解API接口文档 >[按量提取类型](https://www.qg.net/doc/product/6_259_275_276/2144.html)、[通道提取类型](https://www.qg.net/doc/product/6_259_275_277/2262.html)**
## 三、代理测试
在代理服务器中打开命令行,输入相应的代理信息进行运行,若响应成功,则代理可用。
以下图为例,通过curl命令测试账密模式的代理结果,查询IP并成功响应。
`curl -x http://{authkey}:{authpwd}@{118.92.69.112}:{32105} {targetUrl}`

若响应不成功,可对应[错误码表](https://www.qg.net/doc/1838.html),排查问题。
## 四、编写采集程序
测试代理可用后,便可开始编写代理采集程序了。
青果提供了多种编程语言的代码示例供开发者参考,
详情查看
- [C语言代码示例](https://www.qg.net/doc/sdk/9_230/1694.html)
- [Go语言代码示例](https://www.qg.net/doc/sdk/9_230/1695.html)
- [PHP语言代码示例](https://www.qg.net/doc/sdk/9_230/1696.html)
- [Python语言代码示例](https://www.qg.net/doc/sdk/9_230/1697.html)
- [Java语言代码示例](https://www.qg.net/doc/sdk/9_230/1698.html)
- [Shell语言代码示例](https://www.qg.net/doc/sdk/9_230/1699.html)
- [C#语言代码示例](https://www.qg.net/doc/sdk/9_230/1700.html)
- [Node语言代码示例](https://www.qg.net/doc/sdk/9_230/1701.html)
**注:**青果代理IP产品都有相对应的IP存活周期,其有效时长是从提取到IP时算起,超过这个时长IP会失效。
隧道代理(全球HTTP)-使用指南-开发版
## 步骤总览

**注:若使用白名单验证模式,请先添加白名单再进行API接口获取。**
## 一、获取隧道地址
1.在开通隧道代理(全球HTTP)后,就会进入后台管理面板,会看到如以下画面。在业务列表中,可以看到对应的隧道地址。
隧道代理特殊的地方就在于不需要提取和管理大量IP,只需要拿到1个隧道地址便可直接在使用过程中获得所需动态IP,获取隧道地址就近似于获取其他代理产品的IP地址与端口。

**请注意,**目前国内代理IP和全球HTTP的产品,除了按量提取对应的套餐是按量业务之外,其他产品都属于按时业务。
#### 二、授权验证
获取隧道地址之后,还需要有授权验证才能使用代理。青果代理支持白名单和帐密两种验证方式,可自主选择使用。
白名单模式,即把要实现代理的服务器IP添加进代理白名单中,后续使用该IP连接代理就能成功;
账密模式,即先获取该代理业务的账号密码信息,连接代理时填入账密进行验证就可使用代理。

详细步骤可查看[代理验证](https://www.qg.net/doc/use/8_244/1574.html)
##三、代理测试
在代理服务器中打开命令行,输入相应的代理信息进行运行,若响应成功,则代理可用。
以下图为例,通过curl命令测试账密模式的代理结果,查询IP并成功响应。
`curl -x http://{authkey}:{authpwd}@隧道地址 {targetUrl}`

若使用白名单模式,不需要添加authkey和authpwd。
`curl -x {隧道服务器} {目标url}`
例子 curl -x overseas.tunnel.qg.net:15561 www.baidu.com
## 四、编写采集程序
测试代理可用后,便可开始编写代理采集程序了。
青果提供了以下的编程语言的代码示例供开发者进行隧道代理参考,
>>[隧道代理 Go 语言接入指南](https://www.qg.net/doc/sdk/9_230/1872.html)
>>[隧道代理 Python 语言接入指南](https://www.qg.net/doc/sdk/9_230/1879.html)
## 其他应用
另外,虽然隧道代理不需要API接口就能使用代理,但也提供了白名单验证的接口,以下简单介绍隧道相关的白名单接口使用以及一些指定功能。
### API列表
隧道不支持API的调用,只有白名单功能的API接口。
| 接口类型 | 接口 |
| ---------- | --------------------- | ------------------ |
| 白名单相关 | [添加白名单IP](https://www.qg.net/doc/178.html "添加白名单IP")
[删除白名单IP](https://www.qg.net/doc/179.html "删除白名单IP")
[查询白名单IP](https://www.qg.net/doc/180.html "[查询白名单IP]")
### 指定使用某个国家的IP
因为隧道代理每次请求都会随机更换IP,如果你希望随机范围限定在某个国家,可以通过添加国家编码参数来指定使用某个国家的IP。具体编码请查看 [区域编码表](https://www.qg.net/doc/1975.html)
```curl
curl -x {authkey}:{authpwd}:A{国家编码}@{隧道服务器} {目标url}
// 例子,指定使用美国IP
curl -x HBRMO154:4799868CE54:A990100@overseas.tunnel.qg.net:15561 www.baidu.com
```
### 保持IP不变
如果用户需要多个请求在维持一个IP,比如:需要登录,获取数据两个请求在一个IP下,则可对IP进行打标记,通过标记请求在代理有效期内使用相同的代理IP,并且可以支持设定该通道的存活时间。
```curl
curl -x {authkey}:{authpwd}:C{自定义通道名}:T{存活时间}:A{国家编码}@{隧道服务器} {目标url}
// 例子,通道名自定义为100,存活时间设为60秒
curl -x HBRMO154:4799868CE54:Cchannel-1:T60:A990100@overseas-us.tunnel.qg.net:15561 www.baidu.com
```
**注意:如果需要保持IP不变一段时间,那么不可以使用通用的overseas.tunnel.qg.net域名,需要使用特定地区的服务器域名,比如:overseas-us.tunnel.qg.net/overseas-hk.tunnel.qg.net等!!!否则服务器无法保证是否可以保持IP不变。**
### 指定隧道服务器
为了降低使用隧道服务的延迟,青果网络为隧道代理(全球HTTP)提供了多个隧道服务器,用户可根据自身的使用情况就近选择隧道服务器。隧道服务器的地址可在控制台中查看。
```curl
curl -x {authkey}:{authpwd}:C{自定义通道名}:T{存活时间}:A{国家编码}@{隧道服务器} {目标url}
// 例子,更换隧道服务器为美国的隧道服务器
curl -x HBRMO154:4799868CE54:Cchannel-1:T60:A990100@overseas-us.tunnel.qg.net:15561 www.baidu.com
```
短效代理(全球HTTP)开发者指南
**全球HTTP均不支持在中国大陆地区网络环境下使用。**
青果为有经验的开发者提供多种API接口及代码示例,以协助开发者更便利地使用代理。
本篇仅以【提取IP】这一操作为例,介绍如何使用API接口-代码方式来使用代理。
## 步骤总览

## 一、API鉴权与代理授权
青果支持开发者对API鉴权和代理授权验证进行自主管理,以下介绍这一阶段的操作
**API鉴权**是指对调用API接口的服务器身份进行验证的功能。启用鉴权可以提高安全性,用户可以根据需要选择启用或关闭该功能。
用户可根据意愿选择开启和关闭API鉴权(默认关闭),青果提供的鉴权方式有密码和白名单两种,在对应业务【操作】-【业务设置】-【API鉴权/白名单】中进行设置即可。


**代理授权验证**是指对代理身份进行验证,只有通过对应信息才能使用该代理IP,确保您的使用权益和安全性。
青果代理IP支持白名单和帐密两种验证方式,可自主选择使用。
白名单模式,即把要实现代理的服务器IP添加进代理白名单中,后续使用该IP连接代理就能成功;
账密模式,即先获取该代理业务的账号密码信息,连接代理时填入账密进行验证就可使用代理。
白名单设置的入口与API鉴权一样。

详细步骤可查看>[如何使用API鉴权](https://www.qg.net/doc/2283.html)、[代理验证](https://www.qg.net/doc/1574.html)
## 二、获取api接口
青果给开发者提供两种方式来获得api接口
① 使用调试工具/提取工具
调试工具是青果为开发者推出的快速获取接口&调试的简便工具,传送门[>>调试工具](https://www.qg.net/tools/IPdebug.html)
使用调试工具,用户需要先在左侧栏目中选好产品及接口类型,并在右侧表格的参数值列中填写所需信息,便可在页面上方看到完整的【请求地址】,这便是提取IP的API接口。
点击【发送】还能快速调试,查看响应结果,确认该代理接口是否可用。

调试工具除了有提取IP接口,还提供查询在用IP、资源池、资源地区等接口。
若只需要提取IP,也可以使用提取工具,进行简单的选择便可以获取一样的接口链接。传送门[>>提取工具 ](https://www.qg.net/tools/IPget.html)

② 查看api接口文档
除了简便工具,开发者也可以通过更原始的接口文档,自主编写所需的接口链接。
**点击了解API接口文档 >[按量提取类型](https://www.qg.net/doc/product/6_259_275_276/2144.html)、[通道提取类型](https://www.qg.net/doc/product/6_259_275_277/2262.html)**
## 三、代理测试
在代理服务器中打开命令行,输入相应的代理信息进行运行,若响应成功,则代理可用。
以下图为例,通过curl命令测试账密模式的代理结果,查询IP并成功响应。
`curl -x http://{authkey}:{authpwd}@{118.92.69.112}:{32105} {targetUrl}`

若响应不成功,可对应[错误码表](https://www.qg.net/doc/1838.html),排查问题。
## 四、编写采集程序
测试代理可用后,便可开始编写代理采集程序了。
青果提供了多种编程语言的代码示例供开发者参考,
详情查看
- [C语言代码示例](https://www.qg.net/doc/sdk/9_230/1694.html)
- [Go语言代码示例](https://www.qg.net/doc/sdk/9_230/1695.html)
- [PHP语言代码示例](https://www.qg.net/doc/sdk/9_230/1696.html)
- [Python语言代码示例](https://www.qg.net/doc/sdk/9_230/1697.html)
- [Java语言代码示例](https://www.qg.net/doc/sdk/9_230/1698.html)
- [Shell语言代码示例](https://www.qg.net/doc/sdk/9_230/1699.html)
- [C#语言代码示例](https://www.qg.net/doc/sdk/9_230/1700.html)
- [Node语言代码示例](https://www.qg.net/doc/sdk/9_230/1701.html)
**注:**青果代理IP产品都有相对应的IP存活周期,其有效时长是从提取到IP时算起,超过这个时长IP会失效。