ERROR_PROXY_NOT_AUTHORIZED يعني أن CaptchaAI لا يمكنه الاتصال عبر الوكيل المحدد. يغطي هذا الدليل جميع الأسباب والإصلاحات.
الأسباب الشائعة
| السبب | كيفية التحقق |
|---|---|
| تنسيق الوكيل غير صحيح | تحقق من تنسيق type:host:port:user:pass |
| يتطلب الوكيل إدراج IP في القائمة البيضاء | تحقق مما إذا كان موفر الوكيل يدرج عناوين IP في القائمة البيضاء |
| انتهت صلاحية بيانات اعتماد الوكيل | اختبار اتصال الوكيل مباشرة |
| تم تحديد نوع وكيل خاطئ | تحقق من HTTP مقابل SOCKS4 مقابل SOCKS5 |
| الخادم الوكيل معطل | اختبار الاتصال بالوكيل |
| الأحرف الخاصة في كلمة المرور | URL-ترميز كلمة المرور |
تنسيق الوكيل الصحيح
يتوقع CaptchaAI الوكيل بهذا التنسيق:
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)
اختلافات تنسيق الوكيل
# 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"
التحقق قبل التقديم
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")
التعامل مع الأحرف الخاصة في كلمات المرور
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!")
كشف نوع الوكيل
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
استكشاف الأخطاء وإصلاحها
| المشكلة | السبب | الإجراء |
|---|---|---|
| خطأ في بيانات الاعتماد الصحيحة | يتطلب الوكيل إدراج IP في القائمة البيضاء | قم بإدراج عناوين IP CaptchaAI في القائمة البيضاء أو استخدم وكلاء المصادقة فقط |
| يعمل محليا، ويفشل عبر CaptchaAI | عنوان IP لخادم CaptchaAI غير مدرج في القائمة البيضاء | استخدم مصادقة اسم المستخدم/password بدلاً من ذلك |
| فشل وكيل SOCKS | تم تحديد نوع خاطئ | جرب SOCKS5 أو SOCKS4 |
| فشل المصادقة المتقطعة | الحد من معدل الوكيل | استخدم وكلاء /premium المخصصين |
كلمة المرور مع : تكسر التنسيق |
أحرف خاصة لم يتم الهروب منها | URL-ترميز كلمة المرور |
الأسئلة الشائعة
هل يتصل CaptchaAI عبر الوكيل الخاص بي؟
نعم. عند توفير معلمات الوكيل، يقوم حل CaptchaAI بتحميل الصفحة المستهدفة من خلال الوكيل الخاص بك. وهذا يضمن أن الرمز المميز يتطابق مع سياق التصفح الخاص بك.
ما نوع الوكيل الذي يجب أن أستخدمه؟
استخدم HTTP/HTTPS لمعظم المواقع. استخدم SOCKS5 عندما يتطلب الهدف ذلك أو من أجل إخفاء هويته بشكل أفضل. نادراً ما تكون هناك حاجة إلى SOCKS4.
هل أحتاج دائمًا إلى وكيل؟
لا، الوكلاء اختياريون. يتم حل العديد من اختبارات CAPTCHA بشكل جيد بدون وكيل. استخدم الوكلاء عندما يتحقق الموقع المستهدف مما إذا كان عنوان IP الخاص بالحلال يطابق عنوان IP الخاص بإرسال الرمز المميز.
أدلة ذات صلة
- البدء السريع مع CaptchaAI: حلّ أول كابتشا في 5 دقائق
- ERROR_PAGEURL: دليل استكشاف أخطاء عدم تطابق عنوان URL وإصلاحها
إصلاح مشكلات الوكيل —حل مع CaptchaAI.