工具提示格式无效,或把端口当成主机的一部分
检查 顺序是不是和工具提示完全一致:主机、端口、账号、密码,或账号、密码、主机、端口?
处理 换成提示里的写法,并去掉行里的空格和结尾换行。
同一个代理有四种写法。按工具要求的那种填,其余的批量转换,不用重新敲密码。
| 项目 | 示例 | 常见填写位置 |
|---|---|---|
| 分框填写 | 主机、端口、账号、密码各一格 | 浏览器、Telegram、系统和应用的代理表单 |
| HOST:PORT:LOGIN:PASSWORD | HOST:2222:LOGIN:PASSWORD | 一行一个代理的批量导入框 |
| LOGIN:PASSWORD@HOST:PORT | LOGIN:PASSWORD@HOST:2222 | 只给一整串、不带协议的工具 |
| URL 写法 | http://LOGIN:PASSWORD@HOST:2222 | curl、Python Requests、环境变量 |
写法依据 curl 手册和 Requests 文档(2026 年 11 月 15 日读),以及 Proxy302 的批量导入和 Dolphin {anty} 格式指南。最后一列是常见情况,不是规定:以你用的工具输入框下面的提示为准。
URL 的结构是 scheme://userinfo@host:port,账号密码在前,用 @ 和主机隔开。列表写法没有这个分隔符,工具靠数冒号来分:开头一段是主机,接着端口、账号、密码。
密码本身带冒号或 @,就会把这种数法搞乱。URL 写法里这些字符必须做百分号编码,curl 手册就是这么要求的:@ 写成 %40,冒号写成 %3a。批量导入框一般不做编码,最稳的办法是密码里不带这些字符,或者用文档写明拆分规则的工具。
协议也要对上。curl 遇到不写协议或写 http:// 的代理按 HTTP 处理,socks5:// 或 socks5h:// 按 SOCKS5 处理,所以端口要对应:Proxy302 上 HTTP 是 2222,SOCKS5 是 3333。
from urllib.parse import quote
import re
def parse(line):
line = line.strip()
if "://" in line:
line = line.split("://", 1)[1]
if re.match(r"^[^:@/]+:\d+:", line): # HOST:PORT:LOGIN:PASSWORD
host, port, user, password = line.split(":", 3)
elif "@" in line: # LOGIN:PASSWORD@HOST:PORT
auth, _, hostport = line.rpartition("@")
user, _, password = auth.partition(":")
host, _, port = hostport.rpartition(":")
else:
raise ValueError("unknown format: " + line)
return host, port, user, password
def to_at(h, p, u, pw):
return f"{u}:{pw}@{h}:{p}"
def to_colon(h, p, u, pw):
return f"{h}:{p}:{u}:{pw}"
def to_url(h, p, u, pw, scheme="http"):
return f"{scheme}://{quote(u, safe='')}:{quote(pw, safe='')}@{h}:{p}"
for line in open("proxies.txt"):
if line.strip():
print(to_url(*parse(line), scheme="http"))
仅为示例。它读取 proxies.txt,每行一个代理,列表写法或 @ 写法都行(带协议头会忽略),输出把账号密码做了百分号编码的 http:// URL。要输出 SOCKS5 URL,把 http 换成 socks5h。
# HOST:PORT:LOGIN:PASSWORD -> LOGIN:PASSWORD@HOST:PORT
awk -F: '{printf "%s:%s@%s:%s\n", $3, $4, $1, $2}' proxies.txt
# LOGIN:PASSWORD@HOST:PORT -> HOST:PORT:LOGIN:PASSWORD
awk -F'[:@]' '{printf "%s:%s:%s:%s\n", $3, $4, $1, $2}' proxies.txt仅为示例。前提是账号和密码里没有冒号和 @;可能有的话用上面的 Python 版本。
打开「我的资产」,复制一条 IP 的主机、端口、账号和密码。用复制不要手敲,特殊字符才不会丢。
Proxy302 网关上 2222 是 HTTP,3333 是 SOCKS5。每个 IP 只按一种协议发放,串里的协议头要和它一致。
拼成工具要求的格式,再跑下面的 curl 检查。每条都应打印出口 IP。
预期结果 看到出口 IP 和国家,而不是报错或 407。
对整份清单跑转换,粘进工具,先只加一条。头一条连得上,再加其余的。
curl -x http://LOGIN:PASSWORD@HOST:2222 https://ipinfo.io/json
curl -x socks5h://LOGIN:PASSWORD@HOST:3333 https://ipinfo.io/json仅为示例:把占位符换成「我的资产」里的值,选和这条 IP 协议一致的那行。密码含特殊字符时要做百分号编码。
检查 顺序是不是和工具提示完全一致:主机、端口、账号、密码,或账号、密码、主机、端口?
处理 换成提示里的写法,并去掉行里的空格和结尾换行。
检查 密码里有没有 @、冒号或 %?
处理 URL 串里做百分号编码,或把账号密码分框填写。可看 407 指南。
停止条件 复制粘贴的账号密码在 curl 里依然失败,就别再改字符串了,带订单号联系 Support。
检查 这条 IP 是按哪种协议发放的?
处理 用 http:// 加 2222 端口,或者重新买一条 SOCKS5 的 IP 再用 3333。
没有唯一答案。同样五项可以写成 HOST:PORT:LOGIN:PASSWORD、LOGIN:PASSWORD@HOST:PORT 或 http://LOGIN:PASSWORD@HOST:PORT。以工具输入框的提示为准。
按前三个冒号拆成主机、端口、账号、密码,再拼成 账号:密码@主机:端口。本页的 awk 和 Python 示例就是这么做的。
在 Proxy302,每条 IP 的主机、端口、账号和密码都列在「我的资产」。HTTP 用 2222 端口,SOCKS5 用 3333 端口,每条 IP 只按购买时选的一种协议发放。
静态住宅 IP 1 天 US$0.50,30 天 US$7.99(7.99 ÷ 30 ≈ 每天 US$0.27),各国同价。没有免费试用,最小购买是一条 IP 用一天。
官方文档 · 确认日期:
2026 年 11 月 15 日读:authority 由 [ userinfo "@" ] host [ ":" port ] 组成;userinfo 里的特殊字符要百分号编码;userinfo 里写 user:password 的形式被标为不推荐,其中的密码要小心处理。
官方文档 · 确认日期:
2026 年 11 月 15 日读:-x/--proxy 接收 [protocol://]host[:port];不写协议或写 http:// 按 HTTP 代理处理,socks5:// 和 socks5h:// 指定 SOCKS5;代理串里的用户名和密码会被 curl 做 URL 解码,所以 @ 要写成 %40,冒号写成 %3a。
官方文档 · 确认日期:
2026 年 11 月 15 日读:代理要用 HTTP Basic 认证时,在 proxies 字典或 HTTP_PROXY / HTTPS_PROXY 变量里用 http://user:password@host/ 的写法;文档提醒把账号密码放进环境变量或纳入版本管理的文件有安全风险。
官方文档 · 确认日期:
2026 年 11 月 15 日读:quote(string, safe) 对字符串做百分号编码;示例 quote('/El Niño/') 得到 '/El%20Ni%C3%B1o/'。
产品观察 · 确认日期:
站点产品事实表(2026 年 10 月对照控制台、后端和价目表核对,11 月 4 日做过协议测试):产品、价格(US$,1 PTC = US$1)、租期、协议和端口、国家、没有免费试用。
注册账号、充值一次,就能选动态住宅、静态 ISP 或数据中心 IP,几分钟配进你的浏览器。