短效代理开发者指南
青果为有经验的开发者提供多种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会失效。
## 其他应用
### 隧道池支持通过账密指定参数
####参数规则
| 参数 | 含义 | 格式 |示例
| ---------- | --------------------------- | ---------------------- |----------------------- |
| -A- | 指定地区(单个) |-A-{地区编码} |-A-120100(天津) |
| -T- | 指定存活时长(秒) | -T-{秒数} | -T-60 |
* -A- 格式支持拼在authkey后面,也支持拼在authpwd后面。国内代理仅支持通过地区编码指定地区。编码详见 国内区域编码表。
兼容旧格式 :A、:T(如 :A120100、:T60),旧格式仅支持拼在密码后面。
####参数拼接说明
所有参数不区分位置,可以拼接在 Authkey(用户名) 后面,也可以拼接在 AuthPwd(密码) 后面,也可以两边同时拼接,顺序不固定。
```curl
curl -x {Authkey}{参数}:{AuthPwd}{参数}@{隧道服务器} {目标url}
```
示例:
```curl
# 参数全部拼在 Authkey 后面
curl -x authkey-A-120100-T-60:password@tun-szbhry.qg.net:25889 myip.ipip.net
# 参数全部拼在 AuthPwd 后面
curl -x authkey:password-A-120100-T-60@tun-szbhry.qg.net:25889 myip.ipip.net
# 参数分散在两边
curl -x authkey-T-60:password-A-120100@tun-szbhry.qg.net:25889 myip.ipip.net
```
优先级: 当两侧同时指定了相同参数时,密码侧优先。
####指定使用某个地区的IP
隧道池业务达到存活时长后会更换IP,通过 -A- 可将随机范围限定到某个地区。(仅限中国大陆地区)
使用地区编码
```curl
curl -x authkey:password-A-120100@tun-szbhry.qg.net:25889 myip.ipip.net
// 或
curl -x authkey-A-120100:password@tun-szbhry.qg.net:25889 myip.ipip.net
```
如果两侧同时指定了地区,密码侧优先:
```curl
// 用户名指定天津(120100),密码指定北京(110100),最终使用北京IP
curl -x authkey-A-120100:password-A-110100@tun-szbhry.qg.net:25889 myip.ipip.net
```
地区编码详见 [国内区域编码表](https://www.qg.net/doc/2281.html)。
####保持IP不变
如果需要多个请求维持同一个IP(如登录 + 获取数据),可通过 -T- 指定存活时长(单位:秒)。
隧道池无需传通道,直接传 -T- 即可保持IP。 若指定的存活时长超出套餐限制,系统会自动按套餐允许的最大时长处理,不会超出。
```curl
// 保持IP 30秒,无需指定通道
curl -x authkey:password-T-30@tun-szbhry.qg.net:25889 myip.ipip.net
// 参数在用户名侧
curl -x authkey-T-30:password@tun-szbhry.qg.net:25889 myip.ipip.net
```
####组合使用
多个参数可以自由组合,顺序不限。
```curl
// 指定地区 + 存活时长
curl -x authkey:password-A-120100-T-30@tun-szbhry.qg.net:25889 myip.ipip.net
// 参数分布在两侧
curl -x authkey-A-120100:password-T-30@tun-szbhry.qg.net:25889 myip.ipip.net
// 参数全在用户名侧
curl -x authkey-A-110100-T-30:password@tun-szbhry.qg.net:25889 myip.ipip.net
```
国内4种代理产品的区别
青果国内代理ip提供四种产品模式:短效代理、隧道代理、独享代理、长效代理。本文档为大家介绍4者的区别与特点,以此帮助大家选用更合适的产品。
| |
**短效代理 ** | **隧道代理** | **独享代理** | **长效代理** |
| ------------ | ------------------------------------------- | -------------------------------------- | ---------------------------------------------- | ------------------------------------------------ |
| **提取方式**
| 弹性/均匀/按量/通道提取
| -
| 通道提取
| 通道提取
|
| **资源池** | 可选中转池/隧道池 | 默认 | 默认 | 默认 |
| **计费方式** | 依提取方式而定 [了解提取方式>](https://www.qg.net/doc/product/6_255_252/2250.html) | 按每秒可发的请求数计费 | 按同时在线的IP数计费 | 按同时在线的IP数计费 |
| **IP存活时长** | 1分钟-30分钟 | 每次请求换IP | 0-24小时 | 24小时起 |
| **单IP带宽峰值** | 2Mbps | 1Mbps | 5Mbps | 1/2/5Mbps |
| **适合哪些客户** | 针对IP需求量大且带宽要求不高的客户 | 针对代理IP量要求大,希望调用简单的客户 | 针对需要IP短时可用,对稳定性和品质要求高的客户 | 针对需要IP长效,对稳定性和品质要求超高的客户 |
| **产品优势** | 多种提取方式/存活时长可选,更灵活,性价比高 | 0代码接入,调用简单 | 动态独享,可灵活控制存活时长 | 多种动态、静态套餐可选,IP长效稳定 |
| | [了解详情>](https://www.qg.net/doc/product/6_255/1444.html) | [了解详情>](https://www.qg.net/doc/product/6_256_268/1443.html) | [了解详情>](https://www.qg.net/doc/product/6_257/1440.html) | [了解详情>](https://www.qg.net/doc/product/6_258/1445.html) |
短效代理-产品介绍
## 1 产品简介
青果的国内短效代理,提供动态和短效的IP资源,其基于拨号VPS构建的高品质代理服务器,部署全国**200+**城市与地区,IP日流水超**600万**,可用时长从**1-30分钟**全时段覆盖,为您的业务提供强大的支持;
选择青果短效代理,我们将为您提供多种IP资源池、IP提取方式、IP存活时长选项,您可以从中选择与业务**使用最适配、最具性价比**的模式进行使用。
短效代理产品的使用非常方便,只需要几分钟,您可以通过编程使用或手动设置代理IP进行使用。
## 2 提取方式
为满足不同用户的使用需求,动态的短效代理,提供了4种不同的IP提取方式。
- [弹性提取](https://www.qg.net/doc/product/6_255_252/2250.html):【按每天提取的IP数计费】
- [按量提取](https://www.qg.net/doc/product/6_255_252/2251.html):【按提取的IP数计费】
- [均匀提取](https://www.qg.net/doc/product/6_255_252/2252.html):【按每分钟提取的IP数计费】
- [通道提取](https://www.qg.net/doc/product/6_255_252/2253.html):【按同时在线的IP数计费】
↑点击以上蓝字,查看该提取方式详情介绍。
不同的提取方式决定了不同计费方式,具体价格情况以购买页为准。
## 3 资源池
短效代理为用户提供了中转池、隧道池两种IP资源池选择。
不同提取方式下对应有不同的资源池选择,具体见下表
| 短效代理 | 弹性提取 | 按量提取 | 均匀提取 | 通道提取 |
| :------: | :------: | :------: | :------: | :------: |
| 中转池 | √ | √ | √ | √ |
| 隧道池 | | | | √ |
**2种IP资源池的特点为**
- 中转池:由大量的边缘节点汇聚而成的,可选城市更多,IP段也更为分散,业务成功率更高;
- 隧道池:资源也有分散性、边缘性特点,更突出的是免代码接入,即可实现云端自动切换IP,使用十分便利。
更详细的资源池介绍,请点击查看>>[中转池](https://www.qg.net/doc/product/6_255_253/2249.html)、[隧道池](https://www.qg.net/doc/product/6_255_253/2278.html)
## 4 存活时长
IP存活时长是从提取到IP算起,根据购买的IP存活周期,超过存活时长IP失效。
短效代理中,提供了1分钟、2分钟、3分钟、5分钟、1-5分钟、5-15分钟和15-30分钟7种时长选项,由于资源特性不同,不同资源池&提取方式包含的选项也不同,请以具体购买页为准。
短效代理IP的到期时间均为系统自动控制,无需释放。
##5 产品属性
- 免费白名单数量:256
- 支持协议:HTTP/HTTPS/SOCKS5
- 单IP最大连接数:100
- 单IP带宽限制:2Mbps
- 终端数限制:无限制
- 提取资源频率:通道提取为 (通道数*5+10 ) 次/分钟,弹性/均匀/按量提取为60次/分钟
- 单次提取IP上限:按量提取方式为200个,弹性/均匀/通道提取方式为100个
## 6 产品优势
- IP资源池丰富,600万+纯净IP,覆盖全国主要省份
- 3种不同特性IP资源池可选,适配不同使用需求
- 极速(访问百度测试,响应时间<1秒)
- 支持多台设备同时使用
- API授权方式多样,支持白名单和账密验证,使用灵活;
- IP存活时长到期后系统自动释放,无需释放
- 支持短时间内大量提取IP,也支持持续提取指定IP数,满足各类需求;
- 提供代理请求统计,包括请求频率、请求错误分析,帮助您自主排查,提升程序运行的成功率;
- 提供IP提取、IP使用监控,精准回溯每一次的提取与使用记录;
## 7 用途
短效代理可用于:
- 数据采集
- 舆情监测
- 电商选品
- APP大数据分析
- 原创版权保护
不适用于以下场景:
- 访问谷歌等国内正常无法访问的网站;
- 大文档、音乐、视频等大文件下载;
- 登录和访问色情、赌博等不健康的网站;
- 用于网络攻击等违法行为。
## 8 使用指南
短效代理使用非常方便,您可以选择①**手动设置**代理IP并在浏览器中使用,
也可以通过②**API接口获取**代理并参照代码样例集成到您的程序中。
具体请查看
- [手动设置代理指南 >](https://www.qg.net/doc/product/6_255_254/2246.html)
- [开发者使用代理指南 >](https://www.qg.net/doc/product/6_255_254/1793.html )
## 9 产品购买
青果国内代理IP,为所有用户**提供6小时免费试用**,不限使用次数。(除按量提取产品外,均可试用)
欢迎点击下方链接进行试用、购买。
- [短效代理 >](https://www.qg.net/business/proxyip/2.html?region=domestic&product_type=1&pool_type=2&extract_mode=4&spec_idx=0&num_idx=0&time_idx=3&number=1000&authkey_type=0)
- [独享代理 >](https://www.qg.net/business/proxyip/2.html?region=domestic&product_type=2&pool_type=1&extract_mode=1&spec_idx=0&num_idx=0&time_idx=2&number=1&authkey_type=0 )
- [隧道代理 >](https://www.qg.net/business/proxyip/2.html?region=domestic&product_type=3&pool_type=1&extract_mode=1&spec_idx=0&num_idx=0&time_idx=3&number=5&authkey_type=0 )
- [长效代理 >](https://www.qg.net/business/proxyip/2.html?region=domestic&product_type=4&pool_type=1&extract_mode=1&spec_idx=0&num_idx=0&time_idx=2&number=1&authkey_type=0 )
隧道代理-产品介绍
## 1 产品简介
隧道代理是利用高性能主机构建的动态代理服务器,通过将切换IP的操作放到云端,自动管理用户发出的隧道请求,实现云端切换IP转发用户请求,简化用户的操作,降低了用户的时间成本;
隧道代理默认每秒允许5个并发请求限制起,支持短期高并发。
隧道代理使用简单,开发者接入隧道服务即可,参照【[代码样例](https://www.qg.net/list/192.html)】可集成到您的程序中,极大简化了编程的复杂度。

## 2 产品优势
- 无须提取IP,方便快捷;
- 采用弹性并发数控制,支持短期高并发使用;
- 提供可视化监控统计,帮助用户精准把控请求频率走势,提升业务运行的成功率;
- 完美匿名本机IP,避免不必要的网络攻击,提升业务成功率。
- 云端切换IP,连接上我们的隧道代理服务器后,统一入口,随机动态出口IP,无需手动切换 ;
- 隧道代理可用性>99%,若转发的IP不可用,隧道代理会自动再转发到1个新的可用IP,可连续使用;
- 响应极速,毫秒级更换代理IP(访问百度测试,响应时间<1秒);
- 支持多台设备或进程同时进行。
## 3 适合人群
隧道代理适用于需要调用简单的应用场景。
## 4 IP存活时长
每一个请求随机一个IP。
## 5 付费模式
目前仅支持按时计费模式,包括按日、按周、按月、按年四种按时付费模式。
## 6 产品属性
- 免费白名单数量:256
- 支持协议:HTTP/HTTPS/SOCKS5
- 带宽限制:1Mbps/IP
- 终端数限制:无限制
## 7 用途
**隧道代理可用于:**
- 征信查询
- 原创版权保护
- 电商选品
- 舆情监测
**不适用于以下场景**
- 访问谷歌等国内正常无法访问的网站;
- 大文档、音乐、视频等大文件下载;
- 登录和访问色情、赌博等不健康的网站;
- 用于网络攻击等违法行为。
## 8 使用指南
隧道代理最主要的使用方式是编程使用,无须提取IP,对接隧道服务即可。
[查看隧道代理(动态请求)开发者指南 >](https://www.qg.net/doc/product/6_256_269/1796.html)
## 9 产品购买
- [短效代理 >](https://www.qg.net/business/proxyip/2.html?region=domestic&product_type=1&pool_type=2&extract_mode=4&spec_idx=0&num_idx=0&time_idx=3&number=1000&authkey_type=0 )
- [隧道代理 >](https://www.qg.net/business/proxyip/42.html?region=domestic&product_type=3&pool_type=1&extract_mode=1&spec_idx=0&num_idx=0&time_idx=3&number=5&authkey_type=0 )
- [独享代理 >](https://www.qg.net/business/proxyip/6.html?region=domestic&product_type=2&pool_type=1&extract_mode=1&spec_idx=0&num_idx=0&time_idx=2&number=1&authkey_type=0)
- [长效代理 >](https://www.qg.net/business/proxyip/6.html?region=domestic&product_type=4&pool_type=1&extract_mode=1&spec_idx=0&num_idx=0&time_idx=2&number=1&authkey_type=0 )
白名单设置
## 1 概述
为了保证您购买的代理业务只有您的服务器才能使用,我们采用了IP白名单验证方式,通过设置IP白名单IP,除了您指定的服务器IP外,其他IP不能使用。
白名单可以免密钥验证,免费IP白名单鉴权数量高达256个,也就是说购买后您有256台独立外网IP的机器可以使用。不限制同时使用的终端设备数量,满足多业务需求。
需要注意的是,短效代理与独享代理需要在未提取IP之前添加白名单IP,才能生效;
同个账号内不同key的白名单IP若有冲突可联系售前或售后处理。
## 2 步骤说明
### 2.1 先查到您要使用的机器的外网IP。
如果是办公室电脑,可以访问https://ip.cn/api/index?ip=&type=0 查询您的外网IP;
如果是Linux服务器,可以通过如下命令查看机器外网IP:`curl https://d.qg.net/ip`
### 2.2 绑定您机器的IP作为白名单
根据您购买的代理业务,您可以在【会员中心-列表操作-白名单】或调试工具添加IP白名单,完成设置后,这些IP对应的机器就可以正常使用了。
**2.2.1 白名单管理**
进入控制台,点击【代理IP】菜单,找到您所要使用的业务,点击其右侧【更多】下的【业务设置】-【白名单管理】,进入设置;

你可以在该页面方框中对白名单IP进行增加、删除、修改,设置完毕后点击【提交】。
详情如下图:

** 2.2.2 调试工具**
在调试工具上勾选要使用的业务key,选择【IP白名单】模块相关操作接口,包括添加、删除和查询,输入您的机器外网IP,点击测试即可完成设置。详情如下图:


### 2.3 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>")
长效代理-产品介绍
## 1 产品简介
长效代理是以高性能云主机为主,一手散段IP资源为辅建设的高品质代理服务器,青果除了为客户提供可以长期持有的静态IP之外,还有多种存活时长(1天以上)、可动态切换的长效IP资源。
【静态类型】:普惠版与高级版,普惠版的IP是长期不变的,独享带宽高稳定性。而高级版特别提供了自主更换IP的功能,一周可自主更换**2**次。
【动态类型】:IP存活时长为数小时到数天范围内自然失效,有低带宽和高带宽套餐可选。API提取模式下,需手动提取IP;也可选择打开隧道转发功能,那么IP失效之后将自动连接新IP。
长效代理使用非常方便,只需几分钟,您就可以通过[API链接](https://www.qg.net/tools/IPget.html?type=1-1)获取代理IP并参照[代码样例](https://www.qg.net/list/192.html)集成到您的程序中。
## 2 产品优势
- IP时长可控,自主释放,可用时长从24小时到365天全覆盖,满足多场景需求;
- 真实IP地址,IP稳定性强;
- 提供丰富的API接口,调用方便快捷。
- IP真实,全年7x24小时稳定可用
- 静态类型独享带宽和IP,稳定性强
- 极速(访问百度测试,响应时间<1秒)
- 支持指定获取某个城市IP或全国随机
## 3 适合人群
适用于需要业务环境隔离或长期固定IP的业务场景。
## 4 付费模式
静态产品提供普通版和高级版两种套餐,对应不同价格
- 普惠版产品IP长期不变,
- 高级版可根据需求,一周内可自主更换两次。
皆为按时计费 模式,可按周、按月、按年付费。
动态产品提供不同带宽的两个套餐,对应不同价格。
## 5 产品属性
- 免费白名单数量:256
- 支持协议:HTTP/HTTPS/SOCKS5
- 单IP最大连接数:1000
- 单IP带宽限制:静态普惠版1Mbps,静态高级版2Mbps。动态有2M和5M选择。
- 终端数限制:无限制
- 提取资源频率: (通道数*5+10 ) 次/分钟
- 单次提取IP上限:100个
## 6 用途
**长效代理可用于:**
- 跨境电商店铺运营
- 观看视频
- 舆情监测
- 广告检测
- 直播/短视频数据监控分析
**不适用于以下场景**
- 访问谷歌等国内正常无法访问的网站;
- 大文档、音乐、视频等大文件下载;
- 登录和访问色情、赌博等不健康的网站;
- 用于网络攻击等违法行为。
## 7 使用指南
长效代理使用非常方便,您可以选择①**手动设置**代理IP并在浏览器中使用,
也可以通过②**API接口获取**代理并参照代码样例集成到您的程序中。
具体请查看
- [手动设置代理指南 >](https://www.qg.net/doc/product/6_258_281/2268.html)
- [开发者使用代理指南 >](https://www.qg.net/doc/product/6_258_281/1795.html)
##8 产品购买
- [短效代理 >](https://www.qg.net/business/proxyip/2.html?region=domestic&product_type=1&pool_type=2&extract_mode=4&spec_idx=0&num_idx=0&time_idx=3&number=1000&authkey_type=0 )
- [隧道代理 >](https://www.qg.net/business/proxyip/42.html?region=domestic&product_type=3&pool_type=1&extract_mode=1&spec_idx=0&num_idx=0&time_idx=3&number=5&authkey_type=0 )
- [独享代理 >](https://www.qg.net/business/proxyip/6.html?region=domestic&product_type=2&pool_type=1&extract_mode=1&spec_idx=0&num_idx=0&time_idx=2&number=1&authkey_type=0)
- [长效代理 >](https://www.qg.net/business/proxyip/6.html?region=domestic&product_type=4&pool_type=1&extract_mode=1&spec_idx=0&num_idx=0&time_idx=2&number=1&authkey_type=0 )
常见购买问题
## 在哪里购买?我想先测试一下怎么办?
我们为新用户提供6小时免费试用,马上联系客服开通试用。
另外,所有产品均提供包天(独享产品除外)套餐,用户可购买体验。[ 进入购买页面 >](https://www.qg.net/business/proxyip.html)
## 可以提供发票吗?
- 可以的,购买后可直接在会员中心--财务管理--发票管理去[申请发票 >](https://www.qg.net/user/bill/apply)。
- 我们提供含税电子发票(普票/专票),您可自己在开票记录中下载;
## 我无法用支付宝或微信在线支付怎么办?
您还可以线下汇款,支持银行卡转账,在会员中心--财务管理--充值管理中查看线下转账信息和转账流程。

## 购买后可以退款吗?
除了日付周付业务订单,满足退款条件是可以申请退款的。
对于满足条件的新购测试订单用户可享受无理由退款政策,其他情况享受常规退款政策。
## 无理由退款政策
- 满足退款条件的订单7天无理由退款;
## 常规退款政策
- 订单7天内可申请按剩余使用时长退款,超过时间不支持退款;
- 退款金额 = 订单金额 - 已使用时长扣除金额。
## 购买后能更换产品吗?
订单支付成功后是无法更换产品的;
如果您在使用中发现已购买的产品不适合,请申请退款后重新购买其它产品。
隧道代理开发者指南
青果隧道代理与其他形式的代理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会失效。
## 五、其他应用
####参数规则
| 参数 | 含义 | 格式 |示例
| ---------- | --------------------------- | ---------------------- |----------------------- |
| -A- | 指定地区(单个) | -A-{地区编码} |-A-120100(天津) |
| -C- | 指定通道 | -C-{通道名} |-C-tunnel3 |
| -S- | 指定通道(同 -C-) | -S-{通道名} |-S-tunnel1 |
| -T- | 指定存活时长(秒) | -T-{秒数} | -T-60 |
* -A- 格式支持拼在authkey后面,也支持拼在authpwd后面。国内代理仅支持通过地区编码指定地区。编码详见 国内区域编码表。
兼容旧格式 :A、:C、:T(如 :A120100、:Cchannel-1、:T60),旧格式仅支持拼在密码后面。
####参数拼接说明
所有参数不区分位置,可以拼接在 Authkey(用户名) 后面,也可以拼接在 AuthPwd(密码) 后面,也可以两边同时拼接,顺序不固定。
```curl
curl -x {Authkey}{参数}:{AuthPwd}{参数}@{隧道服务器} {目标url}
```
示例:
```curl
# 参数全部拼在 Authkey 后面
curl -x authkey-C-tunnel1-A-120100-T-60:password@tun-szbhry.qg.net:25889 myip.ipip.net
# 参数全部拼在 AuthPwd 后面
curl -x authkey:password-C-tunnel1-T-60-A-120100@tun-szbhry.qg.net:25889 myip.ipip.net
# 参数分散在两边
curl -x authkey-T-60:password-A-120100-C-tunnel1@tun-szbhry.qg.net:25889 myip.ipip.net
```
* 优先级: 当两侧同时指定了相同参数时,密码侧优先。
####指定使用某个地区的IP
隧道代理每次请求会随机更换IP,通过 -A- 可将随机范围限定到某个地区。(仅限中国大陆地区)
使用英文缩写
```curl
curl -x authkey:password-A-120100@tun-szbhry.qg.net:25889 myip.ipip.net
// 或
curl -x authkey-A-120100:password@tun-szbhry.qg.net:25889 myip.ipip.net
```
如果两侧同时指定了地区,密码侧优先:
```curl
// 用户名指定天津(120100),密码指定北京(110100),最终使用北京IP
curl -x authkey-A-120100:password-A-110100@tun-szbhry.qg.net:25889 myip.ipip.net
```
地区编码详见 [国内区域编码表](https://www.qg.net/doc/2281.html)。
####保持IP不变
如果需要多个请求维持同一个IP(如登录 + 获取数据),可通过 -T- 指定存活时长(单位:秒)。
隧道代理下,-T- 必须与 -S-(或 -C-)同时传或同时不传。 通道名为任意非特殊符号字符串。
```curl
// 参数全在密码侧
curl -x authkey:password-S-tunnel1-T-30@tun-szbhry.qg.net:25889 myip.ipip.net
// 参数全在用户名侧
curl -x authkey-S-tunnel1-T-30:password@tun-szbhry.qg.net:25889 myip.ipip.net
// 参数分布在两侧
curl -x authkey-T-30:password-S-tunnel1@tun-szbhry.qg.net:25889 myip.ipip.net
```
注意: 仅指定 -T- 而不指定通道,无法保证IP不变。
####组合使用
多个参数可以自由组合,顺序不限。
```curl
// 参数全在密码侧
curl -x authkey:password-A-120100-C-tunnel3-T-30@tun-szbhry.qg.net:25889 myip.ipip.net
// 参数分布在两侧
curl -x authkey-A-120100:password-S-tunnel1-T-30@tun-szbhry.qg.net:25889 myip.ipip.net
// 参数全在用户名侧
curl -x authkey-A-110100-S-tunnel2-T-30:password@tun-szbhry.qg.net:25889 myip.ipip.net
```
隧道代理-使用指南-开发版
青果隧道代理与其他形式的代理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会失效。
## 五、其他应用
####参数规则
| 参数 | 含义 | 格式 |示例
| ---------- | --------------------------- | ---------------------- |----------------------- |
| -A- | 指定地区(单个) | -A-{地区编码} |-A-120100(天津) |
| -C- | 指定通道 | -C-{通道名} |-C-tunnel3 |
| -S- | 指定通道(同 -C-) | -S-{通道名} |-S-tunnel1 |
| -T- | 指定存活时长(秒) | -T-{秒数} | -T-60 |
* -A- 格式支持拼在authkey后面,也支持拼在authpwd后面。国内代理仅支持通过地区编码指定地区。编码详见 国内区域编码表。
兼容旧格式 :A、:C、:T(如 :A120100、:Cchannel-1、:T60),旧格式仅支持拼在密码后面。
####参数拼接说明
所有参数不区分位置,可以拼接在 Authkey(用户名) 后面,也可以拼接在 AuthPwd(密码) 后面,也可以两边同时拼接,顺序不固定。
```curl
curl -x {Authkey}{参数}:{AuthPwd}{参数}@{隧道服务器} {目标url}
```
示例:
```curl
# 参数全部拼在 Authkey 后面
curl -x authkey-C-tunnel1-A-120100-T-60:password@tun-szbhry.qg.net:25889 myip.ipip.net
# 参数全部拼在 AuthPwd 后面
curl -x authkey:password-C-tunnel1-T-60-A-120100@tun-szbhry.qg.net:25889 myip.ipip.net
# 参数分散在两边
curl -x authkey-T-60:password-A-120100-C-tunnel1@tun-szbhry.qg.net:25889 myip.ipip.net
```
* 优先级: 当两侧同时指定了相同参数时,密码侧优先。
####指定使用某个地区的IP
隧道代理每次请求会随机更换IP,通过 -A- 可将随机范围限定到某个地区。(仅限中国大陆地区)
使用英文缩写
```curl
curl -x authkey:password-A-120100@tun-szbhry.qg.net:25889 myip.ipip.net
// 或
curl -x authkey-A-120100:password@tun-szbhry.qg.net:25889 myip.ipip.net
```
如果两侧同时指定了地区,密码侧优先:
```curl
// 用户名指定天津(120100),密码指定北京(110100),最终使用北京IP
curl -x authkey-A-120100:password-A-110100@tun-szbhry.qg.net:25889 myip.ipip.net
```
地区编码详见 [国内区域编码表](https://www.qg.net/doc/2281.html)。
####保持IP不变
如果需要多个请求维持同一个IP(如登录 + 获取数据),可通过 -T- 指定存活时长(单位:秒)。
隧道代理下,-T- 必须与 -S-(或 -C-)同时传或同时不传。 通道名为任意非特殊符号字符串。
```curl
// 参数全在密码侧
curl -x authkey:password-S-tunnel1-T-30@tun-szbhry.qg.net:25889 myip.ipip.net
// 参数全在用户名侧
curl -x authkey-S-tunnel1-T-30:password@tun-szbhry.qg.net:25889 myip.ipip.net
// 参数分布在两侧
curl -x authkey-T-30:password-S-tunnel1@tun-szbhry.qg.net:25889 myip.ipip.net
```
注意: 仅指定 -T- 而不指定通道,无法保证IP不变。
####组合使用
多个参数可以自由组合,顺序不限。
```curl
// 参数全在密码侧
curl -x authkey:password-A-120100-C-tunnel3-T-30@tun-szbhry.qg.net:25889 myip.ipip.net
// 参数分布在两侧
curl -x authkey-A-120100:password-S-tunnel1-T-30@tun-szbhry.qg.net:25889 myip.ipip.net
// 参数全在用户名侧
curl -x authkey-A-110100-S-tunnel2-T-30:password@tun-szbhry.qg.net:25889 myip.ipip.net
```
短效代理-使用指南-开发版
青果为有经验的开发者提供多种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会失效。
## 其他应用
### 隧道池支持通过账密指定参数
####参数规则
| 参数 | 含义 | 格式 |示例
| ---------- | --------------------------- | ---------------------- |----------------------- |
| -A- | 指定地区(单个) |-A-{地区编码} |-A-120100(天津) |
| -T- | 指定存活时长(秒) | -T-{秒数} | -T-60 |
* -A- 格式支持拼在authkey后面,也支持拼在authpwd后面。国内代理仅支持通过地区编码指定地区。编码详见 国内区域编码表。
兼容旧格式 :A、:T(如 :A120100、:T60),旧格式仅支持拼在密码后面。
####参数拼接说明
所有参数不区分位置,可以拼接在 Authkey(用户名) 后面,也可以拼接在 AuthPwd(密码) 后面,也可以两边同时拼接,顺序不固定。
```curl
curl -x {Authkey}{参数}:{AuthPwd}{参数}@{隧道服务器} {目标url}
```
示例:
```curl
# 参数全部拼在 Authkey 后面
curl -x authkey-A-120100-T-60:password@tun-szbhry.qg.net:25889 myip.ipip.net
# 参数全部拼在 AuthPwd 后面
curl -x authkey:password-A-120100-T-60@tun-szbhry.qg.net:25889 myip.ipip.net
# 参数分散在两边
curl -x authkey-T-60:password-A-120100@tun-szbhry.qg.net:25889 myip.ipip.net
```
优先级: 当两侧同时指定了相同参数时,密码侧优先。
####指定使用某个地区的IP
隧道池业务达到存活时长后会更换IP,通过 -A- 可将随机范围限定到某个地区。(仅限中国大陆地区)
使用地区编码
```curl
curl -x authkey:password-A-120100@tun-szbhry.qg.net:25889 myip.ipip.net
// 或
curl -x authkey-A-120100:password@tun-szbhry.qg.net:25889 myip.ipip.net
```
如果两侧同时指定了地区,密码侧优先:
```curl
// 用户名指定天津(120100),密码指定北京(110100),最终使用北京IP
curl -x authkey-A-120100:password-A-110100@tun-szbhry.qg.net:25889 myip.ipip.net
```
地区编码详见 [国内区域编码表](https://www.qg.net/doc/2281.html)。
####保持IP不变
如果需要多个请求维持同一个IP(如登录 + 获取数据),可通过 -T- 指定存活时长(单位:秒)。
隧道池无需传通道,直接传 -T- 即可保持IP。 若指定的存活时长超出套餐限制,系统会自动按套餐允许的最大时长处理,不会超出。
```curl
// 保持IP 30秒,无需指定通道
curl -x authkey:password-T-30@tun-szbhry.qg.net:25889 myip.ipip.net
// 参数在用户名侧
curl -x authkey-T-30:password@tun-szbhry.qg.net:25889 myip.ipip.net
```
####组合使用
多个参数可以自由组合,顺序不限。
```curl
// 指定地区 + 存活时长
curl -x authkey:password-A-120100-T-30@tun-szbhry.qg.net:25889 myip.ipip.net
// 参数分布在两侧
curl -x authkey-A-120100:password-T-30@tun-szbhry.qg.net:25889 myip.ipip.net
// 参数全在用户名侧
curl -x authkey-A-110100-T-30:password@tun-szbhry.qg.net:25889 myip.ipip.net
```