ERROR_PROXY_NOT_AUTHORIZED có nghĩa là CaptchaAI không thể kết nối thông qua proxy được chỉ định của bạn. Hướng dẫn này bao gồm tất cả các nguyên nhân và cách khắc phục.
Nguyên nhân phổ biến
| nguyên nhân | Cách kiểm tra |
|---|---|
| Định dạng proxy sai | Xác minh định dạng type:host:port:user:pass |
| Proxy yêu cầu danh sách trắng IP | Kiểm tra xem nhà cung cấp proxy có đưa IP vào danh sách trắng không |
| Thông tin xác thực proxy đã hết hạn | Kiểm tra kết nối proxy trực tiếp |
| Đã chỉ định loại proxy sai | Xác minh HTTP vs SOCKS4 vs SOCKS5 |
| Máy chủ proxy ngừng hoạt động | Kiểm tra kết nối với proxy |
| Ký tự đặc biệt trong mật khẩu | URL mã hóa mật khẩu |
Định dạng proxy chính xác
CaptchaAI mong đợi proxy ở định dạng này:
proxytype: HTTP | HTTPS | SOCKS4 | SOCKS5
proxy: host:port:username:password
import requests
# Correct format
data = {
"key": "YOUR_API_KEY",
"method": "userrecaptcha",
"googlekey": "SITE_KEY",
"pageurl": "https://example.com",
"proxytype": "HTTP",
"proxy": "192.168.1.1:8080:myuser:mypass",
"json": 1,
}
resp = requests.post("https://ocr.captchaai.com/in.php", data=data)
Các biến thể định dạng proxy
# With authentication
proxy = "192.168.1.1:8080:username:password"
# Without authentication (rare — most captcha proxies need auth)
proxy = "192.168.1.1:8080"
# SOCKS5
proxytype = "SOCKS5"
proxy = "192.168.1.1:1080:user:pass"
Xác thực trước khi gửi
import re
import requests
def validate_proxy(proxy_str, proxy_type="HTTP"):
"""Validate proxy format and connectivity."""
# Check format
parts = proxy_str.split(":")
if len(parts) < 2:
raise ValueError(f"Invalid proxy format: {proxy_str}")
host = parts[0]
port = parts[1]
if not port.isdigit():
raise ValueError(f"Invalid port: {port}")
# Check proxy type
valid_types = {"HTTP", "HTTPS", "SOCKS4", "SOCKS5"}
if proxy_type not in valid_types:
raise ValueError(f"Invalid proxy type: {proxy_type}")
return True
def test_proxy(proxy_str, proxy_type="HTTP"):
"""Test if proxy is working."""
parts = proxy_str.split(":")
host = parts[0]
port = parts[1]
if len(parts) == 4:
user, password = parts[2], parts[3]
proxy_url = f"{proxy_type.lower()}://{user}:{password}@{host}:{port}"
else:
proxy_url = f"{proxy_type.lower()}://{host}:{port}"
proxies = {"http": proxy_url, "https": proxy_url}
try:
resp = requests.get(
"https://httpbin.org/ip",
proxies=proxies,
timeout=10,
)
print(f"Proxy working. IP: {resp.json()['origin']}")
return True
except Exception as e:
print(f"Proxy failed: {e}")
return False
# Test before using with CaptchaAI
proxy = "192.168.1.1:8080:user:pass"
if test_proxy(proxy, "HTTP"):
print("Proxy is ready to use")
Xử lý các ký tự đặc biệt trong mật khẩu
from urllib.parse import quote
def format_proxy(host, port, username, password):
"""Format proxy string, handling special characters."""
# URL-encode password if it contains special characters
safe_password = quote(password, safe="")
return f"{host}:{port}:{username}:{safe_password}"
# Password with special characters
proxy = format_proxy("192.168.1.1", "8080", "user", "p@ss:word!")
Phát hiện loại proxy
def detect_proxy_type(host, port):
"""Try to detect which proxy protocol works."""
import socket
for proxy_type in ["HTTP", "SOCKS5", "SOCKS4"]:
try:
# Basic TCP connection test
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.settimeout(5)
result = sock.connect_ex((host, int(port)))
sock.close()
if result == 0:
return proxy_type # Port is open, try this type
except Exception:
continue
return None
Khắc phục sự cố
| Vấn đề | Nguyên nhân | Cách xử lý |
|---|---|---|
| Lỗi với thông tin xác thực chính xác | Proxy yêu cầu danh sách trắng IP | Đưa IP CaptchaAI vào danh sách trắng hoặc sử dụng proxy chỉ xác thực |
| Hoạt động cục bộ, không thành công thông qua CaptchaAI | IP máy chủ CaptchaAI không được đưa vào danh sách trắng | Thay vào đó hãy sử dụng tên người dùng/password auth |
| Proxy SOCKS không thành công | Đã chỉ định sai loại | Hãy thử SOCKS5 hoặc SOCKS4 |
| Lỗi xác thực không liên tục | Giới hạn tốc độ proxy | Sử dụng proxy/premium chuyên dụng |
Mật khẩu có định dạng : bị hỏng |
Ký tự đặc biệt không thoát | URL mã hóa mật khẩu |
Câu hỏi thường gặp
CaptchaAI có kết nối qua proxy của tôi không?
Vâng. Khi bạn cung cấp các tham số proxy, bộ giải của CaptchaAI sẽ tải trang đích thông qua proxy của bạn. Điều này đảm bảo mã thông báo phù hợp với bối cảnh duyệt web của bạn.
Tôi nên sử dụng loại proxy nào?
Sử dụng HTTP/HTTPS cho hầu hết các trang web. Sử dụng SOCKS5 khi mục tiêu yêu cầu hoặc để ẩn danh tốt hơn. SOCKS4 hiếm khi cần thiết.
Tôi có luôn cần proxy không?
Không. Proxy là tùy chọn. Nhiều CAPTCHA có thể giải quyết tốt mà không cần proxy. Sử dụng proxy khi trang đích kiểm tra xem IP của người giải có khớp với IP gửi mã thông báo hay không.
Hướng dẫn liên quan
Khắc phục sự cố proxy —giải quyết với CaptchaAI.