全球代理对接说明

全球代理对接说明

本文档主要介绍 Ace Data Cloud 全球代理的对接说明,包括申请方法、实用方法等具体内容。

注册链接

点击链接注册,即可使用!

申请方法

要使用全球服务,可以首先到「申请页面」进行申请。

如果您尚未登录,则会自动跳转到登录页面,登录之后继续申请即可。

使用方法

申请完毕之后,可以到「控制台」中查看本人的申请结果,如图所示:

在这里插入图片描述

点击 「Credentials」,即可查看使用全球代理服务的用户名及密码,以冒号分隔,其中用户名是 8 位,密码是 32 位,如图所示:

本代理是一种轮换代理(Rotating Proxy),因此使用的时候只需要设置一个固定的代理地址和端口即可,代理的地址和端口分别是 global.proxy.acedata.cloud30007,本代理是 HTTP/HTTPS/SOCKS 协议的代理,可以用于请求 HTTP 和 HTTPS 协议的网站。

命令测试

有了代理的用户名密码之后,最方便的方法便是通过 curl 命令行进行测试,如尚未安装,请参考 https://curl.se/ 安装即可。

假如当前代理的用户名密码是 1f78266a:eff0896726224fa2a99fe82dd1f07562,我们可以用如下 curl 命令进行测试:

curl -x 1f78266a:eff0896726224fa2a99fe82dd1f07562@global.proxy.acedata.cloud:30007 https://ipinfo.io

这里我们使用 curl 的 -x 参数指定了代理地址,代理协议默认是 HTTP/HTTPS,这里请求的 URL 是 https://ipinfo.io,这个站点可以返回请求该站点的真实 IP 地址和 IP 所在地域。

注意:上述用户名密码可能无效,请自行替换成你的用户名密码。

运行结果如下:

{
  "ip": "66.206.249.77",
  "hostname": "host-66-206-249-77.public.eastlink.ca",
  "city": "Kirkland Lake",
  "region": "Ontario",
  "country": "CA",
  "loc": "48.1446,-80.0377",
  "org": "AS11260 EastLink",
  "postal": "P2N",
  "timezone": "America/Toronto",
  "readme": "https://ipinfo.io/missingauth"
}

可以看到,返回结果的 country 是 CA,代表加拿大。如果再次运行,可以得到不一样的结果,每次请求都是随机的 IP 出口。

代码对接

下面以 Python 为例演示该代理的设置方法:

import requests

proxy = 'http://{proxy_username}:{proxy_password}@global.proxy.acedata.cloud:30007'

proxies = {
    'http': proxy,
    'https': proxy
}

for _ in range(3):
    resp = requests.get('https://ipinfo.io', proxies=proxies)
    print(resp.text)

这里我们首先声明了代理的 URL 并定义为 proxy 变量,协议是 http 协议,后面跟随隧道代理的用户名和密码(即控制台展示的用户名和密码,二者以冒号分隔),后面再跟一个 @ 符号,再跟代理的地址和端口即可。

注意:您需要将上述代码中的 {proxy_username}:{proxy_password}替换为您的代理用户名密码,最终结果类似 proxy = 'http://1f78266a:eff0896726224fa2a99fe82dd1f07562@global.proxy.acedata.cloud:30007',注意没有 {} 字符。

接着声明了一个 proxies 变量,配置了两个键值对,键名分别为 http 和 https,其键值都是 proxy,代表对于 HTTP 和 HTTPS 协议的网站,都是用 proxy 变量定义的代理来进行请求。接下来定义了三次循环进行代理的测试。

运行结果如下:

{
  "ip": "103.190.205.165",
  "hostname": "assigned-for-client.adnsl.com",
  "city": "Paltan",
  "region": "Dhaka Division",
  "country": "BD",
  "loc": "23.7362,90.4143",
  "org": "AS38203 ADN Telecom Ltd.",
  "postal": "1000",
  "timezone": "Asia/Dhaka",
  "readme": "https://ipinfo.io/missingauth"
}
{
  "ip": "74.111.25.181",
  "hostname": "pool-74-111-25-181.syrcny.fios.verizon.net",
  "city": "Syracuse",
  "region": "New York",
  "country": "US",
  "loc": "43.0481,-76.1474",
  "org": "AS701 Verizon Business",
  "postal": "13201",
  "timezone": "America/New_York",
  "readme": "https://ipinfo.io/missingauth"
}
{
  "ip": "207.113.168.248",
  "city": "LaPorte",
  "region": "Indiana",
  "country": "US",
  "loc": "41.6106,-86.7225",
  "org": "AS13428 Surf Air Wireless, LLC",
  "postal": "46350",
  "timezone": "America/Chicago",
  "readme": "https://ipinfo.io/missingauth"
}

可以看到,每次运行的结果得到的代理 IP 都是随机的,而且 IP 所在地域确实是来源于全球不同国家不同城市。

当然,上述的代理设置方式实际上是一个相对简洁的设置方式。

实际上上述代码等价于在请求的时候设置了一个额外的 Headers - Proxy Authorization,所以上述代码还可以改写如下:

import requests
import base64

proxy_host = 'global.proxy.acedata.cloud'
proxy_port = '30007'
proxy_username = '{proxy_username}' # 8位用户名
proxy_password = '{proxy_password}' # 32位密码

credentials = base64.b64encode(
    f'{proxy_username}:{proxy_password}'.encode()).decode()

proxies = {
    'http': f'http://{proxy_host}:{proxy_port}',
    'https': f'http://{proxy_host}:{proxy_port}'
}

headers = {
    'Proxy-Authorization': f'Basic {credentials}'
}

for _ in range(3):
    resp = requests.get('https://ipinfo.io',
                        proxies=proxies, headers=headers)
    print(resp.text)

可以看到,这里我们通过 Proxy-Authorization 这个请求头额外设置了代理的用户名和密码(需要进行 Base64 编码),这样的代码运行效果也是一样的。

对于其他语言,比如 JavaScript 的 axios,也可以使用类似的设置方式:

const axios = require("axios");
const base64 = require("base64");

const proxy_host = "global.proxy.acedata.cloud";
const proxy_port = "30007";
const proxy_username = "{proxy_username}"; // 8位用户名
const proxy_password = "{proxy_password}"; // 32位密码

const credentials = base64.encode(`${proxy_username}:${proxy_password}`);

const proxies = {
  http: `http://${proxy_host}:${proxy_port}`,
  https: `http://${proxy_host}:${proxy_port}`,
};

const headers = {
  "Proxy-Authorization": `Basic ${credentials}`,
};

for (let i = 0; i < 3; i++) {
  axios
    .get("https://ipinfo.io", { proxies, headers })
    .then((resp) => console.log(resp.data))
    .catch((err) => console.error(err));
}

运行效果都是一样的。

对于其他语言的设置方法,请参考上文自行改写即可。

地区筛选

我们可以通过在 username 里面添加 region 来进行地区的筛选,例如如果要选择美国的代理,原来的 username 是 1f78266a,则可以把 username 修改为 1f78266a-region-us,上述的 curl 就可以改写如下:

curl -x 1f78266a-region-us:eff0896726224fa2a99fe82dd1f07562@global.proxy.acedata.cloud:30007 https://ipinfo.io

地区列表:

国家或地区名称国家/地区代码
美国us
香港hk
安道尔ad
阿联酋ae
阿富汗af
安提瓜和巴布达ag
安圭拉ai
阿尔巴尼亚al
亚美尼亚am
安哥拉ao
南极洲aq
阿根廷ar
美属萨摩亚as
奥地利at
澳大利亚au
阿鲁巴aw
奥兰群岛ax
阿塞拜疆az
波黑ba
巴巴多斯bb
孟加拉bd
比利时be
布基纳法索bf
保加利亚bg
巴林bh
布隆迪bi
贝宁bj
圣巴泰勒米岛bl
百慕大bm
文莱bn
玻利维亚bo
荷兰加勒比区bq
巴西br
巴哈马bs
不丹bt
布韦岛bv
博茨瓦纳bw
白俄罗斯by
伯利兹bz
加拿大ca
科科斯群岛cc
中非cf
瑞士ch
智利cl
喀麦隆cm
哥伦比亚co
哥斯达黎加cr
古巴cu
佛得角cv
圣诞岛cx
塞浦路斯cy
捷克cz
德国de
吉布提dj
丹麦dk
多米尼克dm
多米尼加do
阿尔及利亚dz
厄瓜多尔ec
爱沙尼亚ee
埃及eg
西撒哈拉eh
厄立特里亚er
西班牙es
芬兰fi
斐济群岛fj
密克罗尼西亚联邦fm
法罗群岛fo
法国fr
加蓬ga
格林纳达gd
格鲁吉亚ge
法属圭亚那gf
加纳gh
直布罗陀gi
格陵兰gl
几内亚gn
瓜德罗普gp
赤道几内亚gq
希腊gr
危地马拉gt
关岛gu
几内亚比绍gw
圭亚那gy
赫德岛和麦克唐纳群岛hm
洪都拉斯hn
克罗地亚hr
海地ht
匈牙利hu
印尼id
爱尔兰ie
以色列il
马恩岛im
印度in
英属印度洋领地io
伊拉克iq
伊朗ir
冰岛is
意大利it
泽西岛je
牙买加jm
约旦jo
日本jp
柬埔寨kh
基里巴斯ki
科摩罗km
科威特kw
开曼群岛ky
黎巴嫩lb
列支敦士登li
斯里兰卡lk
利比里亚lr
莱索托ls
立陶宛lt
卢森堡lu
拉脱维亚lv
利比亚ly
摩洛哥ma
摩纳哥mc
摩尔多瓦md
黑山me
法属圣马丁mf
马达加斯加mg
马绍尔群岛mh
马其顿mk
马里ml
缅甸mm
澳门mo
马提尼克mq
毛里塔尼亚mr
蒙塞拉特岛ms
马耳他mt
马尔代夫mv
马拉维mw
墨西哥mx
马来西亚my
纳米比亚na
尼日尔ne
诺福克岛nf
尼日利亚ng
尼加拉瓜ni
荷兰nl
挪威no
尼泊尔np
瑙鲁nr
阿曼om
巴拿马pa
秘鲁pe
法属波利尼西亚pf
巴布亚新几内亚pg
菲律宾ph
巴基斯坦pk
波兰pl
皮特凯恩群岛pn
波多黎各pr
巴勒斯坦ps
帕劳pw
巴拉圭py
卡塔尔qa
留尼汪re
罗马尼亚ro
塞尔维亚rs
俄罗斯ru
卢旺达rw
所罗门群岛sb
塞舌尔sc
苏丹sd
瑞典se
新加坡sg
斯洛文尼亚si
斯洛伐克sk
塞拉利昂sl
圣马力诺sm
塞内加尔sn
索马里so
苏里南sr
南苏丹ss
圣多美和普林西比st
萨尔瓦多sv
叙利亚sy
斯威士兰sz
特克斯和凯科斯群岛tc
乍得td
多哥tg
泰国th
托克劳tk
东帝汶tl
突尼斯tn
汤加to
土耳其tr
图瓦卢tv
坦桑尼亚tz
乌克兰ua
乌干达ug
乌拉圭uy
梵蒂冈va
委内瑞拉ve
英属维尔京群岛vg
美属维尔京群岛vi
越南vn
瓦利斯和富图纳wf
萨摩亚ws
也门ye
马约特yt
南非za
赞比亚zm
津巴布韦zw
刚果(布)cg
刚果(金)cd
莫桑比克mz
根西岛gg
冈比亚gm
北马里亚纳群岛mp
埃塞俄比亚et
新喀里多尼亚nc
瓦努阿图vu
法属南部领地tf
纽埃nu
美国本土外小岛屿um
库克群岛ck
英国gb
特立尼达和多巴哥tt
圣文森特和格林纳丁斯vc
台湾tw
新西兰nz
沙特阿拉伯sa
老挝la
朝鲜 北朝鲜kp
韩国 南朝鲜kr
葡萄牙pt
吉尔吉斯斯坦kg
哈萨克斯坦kz
塔吉克斯坦tj
土库曼斯坦tm
乌兹别克斯坦uz
圣基茨和尼维斯kn
圣皮埃尔和密克隆pm
圣赫勒拿sh
圣卢西亚lc
毛里求斯mu
科特迪瓦ci
肯尼亚ke
蒙古国mn

IP 固定

和上述内容一样,我们可以通过在 username 里面添加 session 并添加一个 5 位固定数字,来实现一段时间内的 IP 固定,有效期大约 10 分钟。

例如如果要实现一段时间内的 IP 固定,原来的 username 是 1f78266a,则可以把 username 修改为 1f78266a-session-12345,其中的 12345 如果不变,那么一段时间内 IP 就不变,上述的 curl 就可以改写如下:

curl -x 1f78266a-session-12345:eff0896726224fa2a99fe82dd1f07562@global.proxy.acedata.cloud:30007 https://ipinfo.io
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值